Mercurial > hg
changeset 19963:6f29cc567845 stable
shelve: disallow commit while unshelve is in progress
Before this patch, commit is allowed even while unshelve is in
progress.
In the other hand, "hg unshelve --abort" and "hg unshelve --continue"
check whether parent revisions of the working directory have changed
or not since last "hg unshelve", and abort without clearing state for
unshelve in progress if they have.
This causes that accidental commit makes clearing state for unshelve
difficult in ordinary ways.
This patch disallows commit while unshelve is in progress for
consistency.
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Tue, 29 Oct 2013 01:03:43 +0900 |
parents | 66b21ce60a19 |
children | ff38dfbce4f8 |
files | hgext/shelve.py tests/test-shelve.t |
diffstat | 2 files changed, 7 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/shelve.py Wed Oct 30 16:03:42 2013 -0500 +++ b/hgext/shelve.py Tue Oct 29 01:03:43 2013 +0900 @@ -704,5 +704,6 @@ def extsetup(ui): cmdutil.unfinishedstates.append( - [shelvedstate._filename, False, True, _('unshelve already in progress'), + [shelvedstate._filename, False, False, + _('unshelve already in progress'), _("use 'hg unshelve --continue' or 'hg unshelve --abort'")])
--- a/tests/test-shelve.t Wed Oct 30 16:03:42 2013 -0500 +++ b/tests/test-shelve.t Tue Oct 29 01:03:43 2013 +0900 @@ -303,6 +303,11 @@ $ hg revert -r . a/a $ hg resolve -m a/a + $ hg commit -m 'commit while unshelve in progress' + abort: unshelve already in progress + (use 'hg unshelve --continue' or 'hg unshelve --abort') + [255] + $ hg unshelve -c unshelve of 'default' complete