Github PRを介して偶然ブランチをmaster
にマージしました。すぐに私はそれを元に戻した。数日後、そのコードがテストされ、マージの準備ができたら、マージとPRは実際にコードをマスターに取得しませんでした。コミットは既にgithubに存在しているからです(コードは元に戻りました。Githubを通じてマージされ、元に戻された変更を再度適用します
だから今、私はコミット無関係の価値週間後に、バックマスターにそれらの変更を取得しようとしている。これは大体何関連ポイントにいくつかのコメントをgit log --oneline
出力です:。どうなるか
54c73ee (HEAD, origin/master, origin/HEAD, staging) Merge pull request #637 from leonsas/last-night-view-metric-ceiling
...
More unrelated changes that should stay in.
...
af602f0 Merge pull request #639 from leonsas/staging
67ded36 (origin/staging) Merge <-- Here's where I tried merging the changes again, but it doesn't make it into the codebase.
...
Bunch of unrelated commits that should stay.
...
a603d0b Merge pull request #633 from leonsas/revert-628-hr-hrv-audit
c3da670 (origin/revert-628-hr-hrv-audit) Revert "Hr hrv audit"
01f2fab Merge pull request #632 from leonsas/revert-629-always-get-hrvz
5824fc8 (origin/revert-629-always-get-hrvz) Revert "Always get hrvz" <-- I reverted changes, because code wasn't tested
b75a537 First iteration at setting the max value on the chart
6939035 Merge pull request #631 from leonsas/is-valid-fix
87b53d5 Merge pull request #629 from leonsas/always-get-hrvz <-- These changes I want in
5b9a848 Merge pull request #628 from leonsas/hr-hrv-audit
これらの変更をマスターに再度適用する最良の方法は?
- 更新1
> git checkout -b hrv-almost-latest-changes e1d0d7b
> git rebase master-clone
First, rewinding head to replay your work on top of it...
Fast-forwarded hrv-almost-latest-changes to master-clone.
> git push --set-upstream origin hrv-almost-latest-changes
をしかし、その後master
は完全にhrv-almost-latest-changes
で最新の状態であるので、githubのPRにマージするものは何もありません: はトーマスの提案を1として、私は再びリベースソリューションを試してみました。
- 更新2
は一般的に、ピッキングの桜がうまく働きました。具体的なソリューションでした:
git checkout master
git checkout -b hrv-merge-fix
git cherry-pick -m 1 87b53d5
(solve conflicts)
git add <files from solved conflicts>
git cherry-pick --continue
git cherry-pick -m 1 5b9a848
git push origin hrv-merge-fix
このように、いくつかの紛争解決の後に' -m 1'を使ってトリックを行ったようです。コードを手動でレビューして、すべてが期待どおりであることを確認します。 – leonsas