I'm a Git user trying to use Mercurial.
Here's what happened: I did a hg backout
on a changeset I wanted to revert. That created a new head, so hg instructed me to merge (back to "default", I assume). After the merge, it told me I still had to commit. Then I noticed something I did wrong when resolving a conflict in the merge, and decided I wanted to have everything as before the hg backout
, that is, I want this uncommited merge to go away. On Git this uncommited stuff would be in the index and I'd just do a git reset --hard HEAD
to wipe it out but, from what I've read, the index doesn't exist on Mercurial. So how do I back out from this?
If you've not yet commited, and it sounds like you haven't you can undo all the merge work with hg update --clean
.
However, in newer mercurial's there's a handy command to re-merge a single file: hg resolve path/to/file.ext
. From the hg help resolve
:
The available actions are: ... 4) discard your current attempt(s) at resolving conflicts and
restart the merge from scratch: "hg resolve file..." (or "-a" for all unresolved files)