hgext/histedit.py
changeset 27085 d50ff8f4891f
parent 27084 383f10b67fd6
child 27086 5f5c7d9f4a08
--- a/hgext/histedit.py	Tue Nov 17 17:53:52 2015 -0800
+++ b/hgext/histedit.py	Tue Nov 17 15:04:31 2015 -0800
@@ -646,6 +646,23 @@
             replacements.append((ich, (n,)))
         return repo[n], replacements
 
+class base(histeditaction):
+    def constraints(self):
+        return set(['forceother'])
+
+    def run(self):
+        if self.repo['.'].node() != self.node:
+            mergemod.update(self.repo, self.node, False, True, False)
+            #                                     branchmerge, force, partial)
+        return self.continueclean()
+
+    def continuedirty(self):
+        abortdirty()
+
+    def continueclean(self):
+        basectx = self.repo['.']
+        return basectx, []
+
 class _multifold(fold):
     """fold subclass used for when multiple folds happen in a row
 
@@ -1291,3 +1308,5 @@
     cmdutil.unfinishedstates.append(
         ['histedit-state', False, True, _('histedit in progress'),
          _("use 'hg histedit --continue' or 'hg histedit --abort'")])
+    if ui.configbool("experimental", "histeditng"):
+        actiontable.update({'b': base, 'base': base})