update: check command line before modifying repo
A failed command should not have any effect on the repo.
--- a/mercurial/commands.py Sun Feb 07 21:44:38 2016 -0800
+++ b/mercurial/commands.py Sun Feb 07 22:18:24 2016 -0800
@@ -6959,24 +6959,24 @@
if rev is None or rev == '':
rev = node
+ if date and rev is not None:
+ raise error.Abort(_("you can't specify a revision and a date"))
+
+ if check and clean:
+ raise error.Abort(_("cannot specify both -c/--check and -C/--clean"))
+
warndest = False
with repo.wlock():
cmdutil.clearunfinished(repo)
if date:
- if rev is not None:
- raise error.Abort(_("you can't specify a revision and a date"))
rev = cmdutil.finddate(ui, repo, date)
# if we defined a bookmark, we have to remember the original name
brev = rev
rev = scmutil.revsingle(repo, rev, rev).rev()
- if check and clean:
- raise error.Abort(_("cannot specify both -c/--check and -C/--clean")
- )
-
if check:
cmdutil.bailifchanged(repo, merge=False)
if rev is None: