にマージsome-branch
しましmaster
たが、競合が発生します。これを元に戻す方法は?
git checkout master
git merge some-branch
...
CONFLICTS :(
git merge --abort
最近追加されたオプションです。それはあなたが期待することをします。
競合がある場合、マージはまだコミットされていないため、を使用git reset --hard HEAD
してマージを削除できます。
最新のgitを使用すると、前の回答で提案されているように、次のことができます。
git merge --abort
古い構文:
git reset --merge
古い学校、以前の回答でも提案されています:
git reset --hard
しかし実際には、それが存在することを前提git merge --abort
としてのみ同等であることに注意する価値があります。これは、マージコマンドのgitヘルプで読み取ることができます。git reset --merge
MERGE_HEAD
git merge --abort is equivalent to git reset --merge when MERGE_HEAD is present.
マージが失敗した後、がないMERGE_HEAD
場合、失敗したマージはで元に戻すことができますが、git reset --merge
必ずしもで元に戻す必要はないため、同じものの新旧の構文だけではありません。git merge --abort
個人的にgit reset --merge
は日常の仕事のほうが便利なので、いつも使っている方法です。