When using Mercurial, how do you undo all changes in the working directory since the last commit? It seems like this would be a simple thing, but it\'s escaping me.
hg revert will do the trick.
It will revert you to the last commit.
--all
will revert all files.
See the link for the Man Page description of it.
hg update
is usually used to refresh your working directory after you pull from a different repo or swap branches. hg up myawesomebranch
. It also can be used to revert to a specific version. hg up -r 12
.
hg revert
is your friend:
hg revert --all
hg update
merges your changes to your current working copy with the target revision. Merging the latest revision with your changed files (=current working copy) results in the same changes that you already have, i.e., it does nothing :-)
If you want to read up on Mercurial, I'd recommend the very awesome tutorial Hg Init.
An alternative solution to hg revert
is hg update -C
. You can discard your local changes and update to some revision using this single command.
I usually prefer typing hg up -C
because it's shorter than hg revert --all --no-backup
:)
hg revert --all
and then
hg pull -u
works for me