diff -r 383f10b67fd6 -r d50ff8f4891f hgext/histedit.py --- 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})