How do I abort or undo a merge in Git?
Mid-conflict: git merge --abort. Already committed locally: git reset --hard ORIG_HEAD. Already pushed: git revert -m 1 <merge_sha>.
Do it now:
git merge --abort git reset --hard ORIG_HEAD
Need more than the one-liner?
This answer covers one scenario out of dozens. The Git Rescue Field Guide collects all 52 recovery situations — resets, rebases, dropped stashes, forced pushes, scrubbed history — each with the exact command and the gotchas that bite afterwards.
More rescues: How do I recover a deleted branch in Git? · How do I undo git reset --hard? · How do I recover lost commits after a rebase? · How do I undo a commit I already pushed? · How do I recover a dropped stash? · How do I fix a detached HEAD state in Git? · Can I recover a file I deleted before committing it? · How do I remove a file (or secret) from entire git history? · How do I find a lost commit when I don't know the hash?