Comments
Patch
@@ -4572,21 +4572,26 @@ def phase(ui, repo, *revs, **opts):
# display
for r in revs:
ctx = repo[r]
ui.write('%i: %s\n' % (ctx.rev(), ctx.phasestr()))
else:
+ tr = None
lock = repo.lock()
try:
+ tr = repo.transaction("phase")
# set phase
if not revs:
raise util.Abort(_('empty revision set'))
nodes = [repo[r].node() for r in revs]
olddata = repo._phasecache.getphaserevs(repo)[:]
phases.advanceboundary(repo, targetphase, nodes)
if opts['force']:
phases.retractboundary(repo, targetphase, nodes)
+ tr.close()
finally:
+ if tr is not None:
+ tr.release()
lock.release()
# moving revision from public to draft may hide them
# We have to check result on an unfiltered repository
unfi = repo.unfiltered()
newdata = repo._phasecache.getphaserevs(unfi)