Mercurial > hg-stable
changeset 13568:0b79cf616e65
commands.update() now works properly with a revision of 0
Without this change commands.update() treats an integer 0 as if no revision
was passed and updates to the branch head. This fix allows an integer 0 to
be detected as a revision number so the working directory is correctly
changed to revision 0 rather than the branch head.
author | Mark Drago <markdrago@gmail.com> |
---|---|
date | Tue, 08 Mar 2011 08:41:39 -0500 |
parents | cc27c31ebc28 |
children | 3ab3b892d223 |
files | mercurial/commands.py tests/test-basic.t |
diffstat | 2 files changed, 17 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/commands.py Tue Mar 08 14:55:31 2011 -0600 +++ b/mercurial/commands.py Tue Mar 08 08:41:39 2011 -0500 @@ -4053,7 +4053,7 @@ if rev and node: raise util.Abort(_("please specify just one revision")) - if not rev: + if rev is None or rev == '': rev = node # if we defined a bookmark, we have to remember the original bookmark name
--- a/tests/test-basic.t Tue Mar 08 14:55:31 2011 -0600 +++ b/tests/test-basic.t Tue Mar 08 08:41:39 2011 -0500 @@ -20,6 +20,22 @@ summary: test +Verify that updating to revision 0 via commands.update() works properly + + $ cat <<EOF > update_to_rev0.py + > from mercurial import ui, hg, commands + > myui = ui.ui() + > repo = hg.repository(myui, path='.') + > commands.update(myui, repo, rev=0) + > EOF + $ hg up null + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + $ python ./update_to_rev0.py + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ hg identify -n + 0 + + Poke around at hashes: $ hg manifest --debug