こんな場面
xxx_branch
で作業したぜ!master
にmergeするで!あ、
xxx_branch
まだ修正点あるわ。master
にmergeしたのをrevertして元通りに戻すっと。さあ、
xxx_branch
をもう一度mergeするで!あれ・・・?
xxx_branch
の変更がmaster
に反映されてない・・・
何が起こるのか
commit-1
commit-2
commit-3
が最初のmergeであったとして、
2で commit-1
commit-2
commit-3
を打ち消します。
3で commit-4
を追加して、マージすると、
4には commit-4
しか残らない・・・
なぜか
2の時点で、masterにはcommit-1
commit-2
commit-3
revert-1-2-3
が入っています。
3の時点で、commit-1
commit-2
commit-3
revert-1-2-3
commit-4
なので、そりゃ1-2-3はないですよね・・・
どうしたらいいか
revertをrevertする
commit-1
commit-2
commit-3
と同じ変更を再度行ったブランチをmergeする
revertって難しいね
revertするとこんな問題が発生しますね・・・ 2の時点で、前のcommitに戻してフォースプッシュするという手もありますが、記録がなくなるし出来れば避けたいところ。
何が最善かはわからないので、おすすめの対処方とかありましたら、是非教えてください。
まあ、2のようなことが起こらないのが一番ですね!注意しましょう!←ちなみにやらかしたのは私