マージコミットを削除する
マージコミットをgit reset
したらどうなるの?
例えば以下のようにマージ済みのコミットがあり、マージ前のブランチを消している状態として、
* 3333333 master
|\
| * 22222222
|/
* 1111111
マージ先間違えた!みたいな感じで、そのままgit reset --soft HEAD^
しちゃうと、
* 3333333 master
|
* 1111111
こうなってしまう。
このため、マージコミットを削除する時は、マージ前のコミットにブランチを付け直しましょう。
git checkout -b topic.revive 2222222
ただし、gitの世界では、git reset
やgit rebase
しても、該当のコミットは残っているそうなので、マージコミット削除後でも、コミットIDさえ覚えていれば、そこからブランチを復旧できる・・・ハズ。