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