次のようなリポジトリがあるとします。
I --- C --- M master
\ /
`- A -´ topic
に組み込まれてM
いるマージ コミットはどこにありますか。topic
master
後で にバグを見つけたので、ブランチC
上で修正するコミットを作成します。master
M
I --- C --- M --- C1 master
\ /
`- A -´ topic
しかし、理想的には、履歴を次のようにしたいと思います。
I --- C --- C1 --- M master
\ /
`- A --------´ topic
C1
マージ前に表示されるように履歴を書き換えるにはどうすればよいM
ですか?
を削除M
し、 によって作成されたパッチを適用し、再度C1
マージtopic
してmaster
、すべての競合を解決することもできますが、この作業は避けたいので、元のコミット情報 (作成者、日付など) を保持したいと思います。可能であれば、git commit
再度行うことを除外します。で可能git rebase
だといいのですが、 と のどちらかまたは両方で失敗し-p
まし-i
た。