##// END OF EJS Templates
phase: wrap `hg phases` phase movement in a transaction...
Pierre-Yves David -
r22050:56ccd95b default
parent child Browse files
Show More
@@ -4574,8 +4574,10 b' def phase(ui, repo, *revs, **opts):'
4574 ctx = repo[r]
4574 ctx = repo[r]
4575 ui.write('%i: %s\n' % (ctx.rev(), ctx.phasestr()))
4575 ui.write('%i: %s\n' % (ctx.rev(), ctx.phasestr()))
4576 else:
4576 else:
4577 tr = None
4577 lock = repo.lock()
4578 lock = repo.lock()
4578 try:
4579 try:
4580 tr = repo.transaction("phase")
4579 # set phase
4581 # set phase
4580 if not revs:
4582 if not revs:
4581 raise util.Abort(_('empty revision set'))
4583 raise util.Abort(_('empty revision set'))
@@ -4584,7 +4586,10 b' def phase(ui, repo, *revs, **opts):'
4584 phases.advanceboundary(repo, targetphase, nodes)
4586 phases.advanceboundary(repo, targetphase, nodes)
4585 if opts['force']:
4587 if opts['force']:
4586 phases.retractboundary(repo, targetphase, nodes)
4588 phases.retractboundary(repo, targetphase, nodes)
4589 tr.close()
4587 finally:
4590 finally:
4591 if tr is not None:
4592 tr.release()
4588 lock.release()
4593 lock.release()
4589 # moving revision from public to draft may hide them
4594 # moving revision from public to draft may hide them
4590 # We have to check result on an unfiltered repository
4595 # We have to check result on an unfiltered repository
General Comments 0
You need to be logged in to leave comments. Login now