mercurial/cmdutil.py
changeset 17475 63e45aee46d4
parent 17473 9732473aa24b
child 17675 8575f4a2126e
equal deleted inserted replaced
17474:f85816af6294 17475:63e45aee46d4
     8 from node import hex, nullid, nullrev, short
     8 from node import hex, nullid, nullrev, short
     9 from i18n import _
     9 from i18n import _
    10 import os, sys, errno, re, tempfile
    10 import os, sys, errno, re, tempfile
    11 import util, scmutil, templater, patch, error, templatekw, revlog, copies
    11 import util, scmutil, templater, patch, error, templatekw, revlog, copies
    12 import match as matchmod
    12 import match as matchmod
    13 import subrepo, context, repair, bookmarks, graphmod, revset, phases
    13 import subrepo, context, repair, bookmarks, graphmod, revset, phases, obsolete
    14 import lock as lockmod
    14 import lock as lockmod
    15 
    15 
    16 def parsealiases(cmd):
    16 def parsealiases(cmd):
    17     return cmd.lstrip("^").split("|")
    17     return cmd.lstrip("^").split("|")
    18 
    18 
  1695                 if bms:
  1695                 if bms:
  1696                     for bm in bms:
  1696                     for bm in bms:
  1697                         repo._bookmarks[bm] = newid
  1697                         repo._bookmarks[bm] = newid
  1698                     bookmarks.write(repo)
  1698                     bookmarks.write(repo)
  1699             #commit the whole amend process
  1699             #commit the whole amend process
       
  1700             if obsolete._enabled and newid != old.node():
       
  1701                 # mark the new changeset as successor of the rewritten one
       
  1702                 new = repo[newid]
       
  1703                 obs = [(old, (new,))]
       
  1704                 if node:
       
  1705                     obs.append((ctx, (new,)))
       
  1706 
       
  1707                 obsolete.createmarkers(repo, obs)
  1700             tr.close()
  1708             tr.close()
  1701         finally:
  1709         finally:
  1702             tr.release()
  1710             tr.release()
  1703         # Strip the intermediate commit (if there was one) and the amended
  1711         if (not obsolete._enabled) and newid != old.node():
  1704         # commit
  1712             # Strip the intermediate commit (if there was one) and the amended
  1705         if newid != old.node():
  1713             # commit
  1706             if node:
  1714             if node:
  1707                 ui.note(_('stripping intermediate changeset %s\n') % ctx)
  1715                 ui.note(_('stripping intermediate changeset %s\n') % ctx)
  1708             ui.note(_('stripping amended changeset %s\n') % old)
  1716             ui.note(_('stripping amended changeset %s\n') % old)
  1709             repair.strip(ui, repo, old.node(), topic='amend-backup')
  1717             repair.strip(ui, repo, old.node(), topic='amend-backup')
  1710     finally:
  1718     finally: