web-dev-qa-db-ja.com

Gitマージのマージを解除する方法は?

私は誤ってdevからgit pull Origin masterを実行し、masterがdevにマージされました。結合を解除することはできますか?

私はすでにさまざまなソリューションを見てきました、私は開発者とマスターの両方からこれを試してみました:git revert -m 1 <commit>(各回)

Devのマージマスターを元に戻したい: https://github.com/iliassk/PED_MyTodo/commits/dev commit:e382550

57
redAce

その時点でコミットが見つかった場合は、ブランチをマージ直前の状態にリセットできます。

1つの方法はgit reflogを使用することです。これは、持っていたすべてのHEADをリストします。 git reflog --relative-dateは、各変更がどのくらい前に発生したかを示すため、非常に便利であることがわかりました。

コミットが見つかったら、git reset --hard <commit id>を実行するだけで、ブランチは以前のようになります。

SourceTreeがある場合、<commit id>が圧倒的すぎる場合、git reflogを検索できます。

104

マージをコミットしていない場合は、次を使用します。

git merge --abort

38
Nikhil