背景:最近、かなり大きなトピック ブランチを にマージしましたmaster
。数日後、このトピック ブランチにバグが含まれていることがわかりました。だから私はそれをgit revert -m 1 <merge-commit>
編集しました。
問題:トピック ブランチをチェックアウトし、現在のブランチに対してリベースして、master
1) バグを修正し、2) (再度) 修正したトピック ブランチをマスターにマージします。新しいブランチを作成するのfixedtopic
は簡単ですが、毎回作成します
git checkout fixedtopic
git rebase master
git は、古いコミットは既に にマージされているため、リプレイしないと判断しmaster
ます。代わりに、単純に早送りリベースを行います。
質問:fixedtopic
を使用してコミットのリプレイを強制するにはどうすればよいrebase
ですか? できますか?cherry-pick
少し面倒なので使わないほうがいいです。
追加:
git reset
マスターを上流にプッシュしたため、マージコミットを行うことはオプションではありません。master
新しいブランチを作成して元に戻したくありません。その理由は、対話型リベースを使用してトピック ブランチの履歴の一部を書き直したいからです。- シナリオの github の要点は次のとおりです。
master
master