はじめに
gitを使っていればCONFLICTはちょくちょくありますよね。
# 最初は差分がないことを確認 $ git status On branch [ブランチ1] nothing to commit, working directory clean # とあるブランチをmerge # するとCONFLICT... $ git merge [ブランチ2] Auto-merging package.json CONFLICT (content): Merge conflict in package.json Automatic merge failed; fix conflicts and then commit the result.
そんな時に通常はCONFLICTを解消しますが、
そうではなく一回なかったことにしたいこともあるわけです。
あるんですよ...
そんな場合の対処法
そこで"git merge --abort"
git merge --abort
を使うとマージする前の状態に戻ります。
いちおうCONFLICTしてから取り消す一連を参考程度に。
# 最初は差分がないことを確認 $ git status On branch [ブランチ1] nothing to commit, working directory clean # とあるブランチをmerge $ git merge [ブランチ2] Auto-merging package.json CONFLICT (content): Merge conflict in package.json Automatic merge failed; fix conflicts and then commit the result. # statusを見るとCONFLICTしている $ git status On branch [ブランチ1] You have unmerged paths. (fix conflicts and run "git commit") Changes to be committed: modified: README.md Unmerged paths: (use "git add <file>..." to mark resolution) both modified: package.json # CONFLICTじゃなければ戻せるcheckoutを試しに # 当然断られる $ git checkout . error: path 'package.json' is unmerged # ここで登場 $ git merge --abort # 無事になかったことに $ git status On branch [ブランチ1] nothing to commit, working directory clean
おわり
mergeやめたい!って場合がたまーにあるたびに調べてたので自分用備忘録でした\(^o^)/