comparison mercurial/commands.py @ 26030:5243890224ff

merge with stable
author Matt Mackall <mpm@selenic.com>
date Thu, 13 Aug 2015 19:37:47 -0500
parents 84c00f03e06c 6fbe35588433
children 10917b062adf
comparison
equal deleted inserted replaced
26024:84c00f03e06c 26030:5243890224ff
6473 raise util.Abort(_("please specify just one revision")) 6473 raise util.Abort(_("please specify just one revision"))
6474 6474
6475 if rev is None or rev == '': 6475 if rev is None or rev == '':
6476 rev = node 6476 rev = node
6477 6477
6478 cmdutil.clearunfinished(repo) 6478 wlock = repo.wlock()
6479 6479 try:
6480 # with no argument, we also move the active bookmark, if any 6480 cmdutil.clearunfinished(repo)
6481 rev, movemarkfrom = bookmarks.calculateupdate(ui, repo, rev) 6481
6482 6482 # with no argument, we also move the active bookmark, if any
6483 # if we defined a bookmark, we have to remember the original bookmark name 6483 rev, movemarkfrom = bookmarks.calculateupdate(ui, repo, rev)
6484 brev = rev 6484
6485 rev = scmutil.revsingle(repo, rev, rev).rev() 6485 # if we defined a bookmark, we have to remember the original name
6486 6486 brev = rev
6487 if check and clean: 6487 rev = scmutil.revsingle(repo, rev, rev).rev()
6488 raise util.Abort(_("cannot specify both -c/--check and -C/--clean")) 6488
6489 6489 if check and clean:
6490 if date: 6490 raise util.Abort(_("cannot specify both -c/--check and -C/--clean"))
6491 if rev is not None: 6491
6492 raise util.Abort(_("you can't specify a revision and a date")) 6492 if date:
6493 rev = cmdutil.finddate(ui, repo, date) 6493 if rev is not None:
6494 6494 raise util.Abort(_("you can't specify a revision and a date"))
6495 if check: 6495 rev = cmdutil.finddate(ui, repo, date)
6496 cmdutil.bailifchanged(repo, merge=False) 6496
6497 if rev is None: 6497 if check:
6498 rev = repo[repo[None].branch()].rev() 6498 cmdutil.bailifchanged(repo, merge=False)
6499 6499 if rev is None:
6500 repo.ui.setconfig('ui', 'forcemerge', tool, 'update') 6500 rev = repo[repo[None].branch()].rev()
6501 6501
6502 if clean: 6502 repo.ui.setconfig('ui', 'forcemerge', tool, 'update')
6503 ret = hg.clean(repo, rev) 6503
6504 else: 6504 if clean:
6505 ret = hg.update(repo, rev) 6505 ret = hg.clean(repo, rev)
6506
6507 if not ret and movemarkfrom:
6508 if bookmarks.update(repo, [movemarkfrom], repo['.'].node()):
6509 ui.status(_("updating bookmark %s\n") % repo._activebookmark)
6510 else: 6506 else:
6511 # this can happen with a non-linear update 6507 ret = hg.update(repo, rev)
6512 ui.status(_("(leaving bookmark %s)\n") % 6508
6513 repo._activebookmark) 6509 if not ret and movemarkfrom:
6510 if bookmarks.update(repo, [movemarkfrom], repo['.'].node()):
6511 ui.status(_("updating bookmark %s\n") % repo._activebookmark)
6512 else:
6513 # this can happen with a non-linear update
6514 ui.status(_("(leaving bookmark %s)\n") %
6515 repo._activebookmark)
6516 bookmarks.deactivate(repo)
6517 elif brev in repo._bookmarks:
6518 bookmarks.activate(repo, brev)
6519 ui.status(_("(activating bookmark %s)\n") % brev)
6520 elif brev:
6521 if repo._activebookmark:
6522 ui.status(_("(leaving bookmark %s)\n") %
6523 repo._activebookmark)
6514 bookmarks.deactivate(repo) 6524 bookmarks.deactivate(repo)
6515 elif brev in repo._bookmarks: 6525 finally:
6516 bookmarks.activate(repo, brev) 6526 wlock.release()
6517 ui.status(_("(activating bookmark %s)\n") % brev)
6518 elif brev:
6519 if repo._activebookmark:
6520 ui.status(_("(leaving bookmark %s)\n") %
6521 repo._activebookmark)
6522 bookmarks.deactivate(repo)
6523 6527
6524 return ret 6528 return ret
6525 6529
6526 @command('verify', []) 6530 @command('verify', [])
6527 def verify(ui, repo): 6531 def verify(ui, repo):