Skip to content
Snippets Groups Projects
Commit bea381c1 authored by Pierre-Yves David's avatar Pierre-Yves David
Browse files

histedit: move `between function` outside the action logic

Having this function in the middle of action and patching logic did not make
sense
parent 811a657f
No related branches found
No related tags found
No related merge requests found
......@@ -195,28 +195,6 @@
os.unlink(patchfile)
return files
def between(repo, old, new, keep):
"""select and validate the set of revision to edit
When keep is false, the specified set can't have children."""
revs = [old]
current = old
while current != new:
ctx = repo[current]
if not keep and len(ctx.children()) > 1:
raise util.Abort(_('cannot edit history that would orphan nodes'))
if len(ctx.parents()) != 1 and ctx.parents()[1] != node.nullid:
raise util.Abort(_("can't edit history with merges"))
if not ctx.children():
current = new
else:
current = ctx.children()[0].node()
revs.append(current)
if len(repo[current].children()) and not keep:
raise util.Abort(_('cannot edit history that would orphan nodes'))
return revs
def pick(ui, repo, ctx, ha, opts):
oldctx = repo[ha]
if oldctx.parents()[0] == ctx:
......@@ -625,6 +603,28 @@
os.unlink(repo.sjoin('undo'))
def between(repo, old, new, keep):
"""select and validate the set of revision to edit
When keep is false, the specified set can't have children."""
revs = [old]
current = old
while current != new:
ctx = repo[current]
if not keep and len(ctx.children()) > 1:
raise util.Abort(_('cannot edit history that would orphan nodes'))
if len(ctx.parents()) != 1 and ctx.parents()[1] != node.nullid:
raise util.Abort(_("can't edit history with merges"))
if not ctx.children():
current = new
else:
current = ctx.children()[0].node()
revs.append(current)
if len(repo[current].children()) and not keep:
raise util.Abort(_('cannot edit history that would orphan nodes'))
return revs
def writestate(repo, parentctxnode, created, replaced,
tmpnodes, existing, rules, keep, oldtip, replacemap):
fp = open(os.path.join(repo.path, 'histedit-state'), 'w')
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment