hgext/evolution.py
changeset 117 438fe133b068
parent 116 64ca29eef349
child 118 06fe05256a79
--- a/hgext/evolution.py	Wed Dec 28 12:38:01 2011 +0100
+++ b/hgext/evolution.py	Wed Dec 28 13:10:24 2011 +0100
@@ -225,6 +225,8 @@
      _('specifies the changeset to amend'), _('REV')),
     ('b', 'branch', '',
      _('specifies a branch for the new.'), _('REV')),
+    ('e', 'edit', False,
+     _('edit commit message.'), _('')),
     ] + walkopts + commitopts + commitopts2,
     _('[OPTION]... [FILE]...'))
 
@@ -274,7 +276,7 @@
         ciopts.pop('logfile', None)
         ciopts['message'] = opts.get('note') or ('amends %s' % old.hex())
         e = cmdutil.commiteditor
-        if ciopts.get('force_editor'):
+        if ciopts.get('edit'):
             e = cmdutil.commitforceeditor
         def commitfunc(ui, repo, message, match, opts):
             return repo.commit(message, opts.get('user'), opts.get('date'), match,
@@ -313,7 +315,19 @@
             repo.addobsolete(new.node(), old.node())
     return result
 
+def graftwrapper(orig, ui, repo, *revs, **kwargs):
+    if kwargs.get('old_obsolete'):
+        obsoleted = kwargs.setdefault('obsolete', [])
+        if kwargs['continue']:
+            obsoleted.extend(repo.opener.read('graftstate').splitlines())
+        else:
+            obsoleted.extend(revs)
+    return commitwrapper(orig, ui, repo,*revs, **kwargs)
+
 def extsetup(ui):
     entry = extensions.wrapcommand(commands.table, 'commit', commitwrapper)
     entry[1].append(('o', 'obsolete', [], _("this commit obsolet this revision")))
+    entry = extensions.wrapcommand(commands.table, 'graft', graftwrapper)
+    entry[1].append(('o', 'obsolete', [], _("this graft obsolet this revision")))
+    entry[1].append(('O', 'old-obsolete', False, _("graft result obsolete graft source")))