--- a/mercurial/commands.py Fri Sep 18 17:19:49 2020 +0530
+++ b/mercurial/commands.py Mon Sep 21 09:56:48 2020 -0700
@@ -790,7 +790,8 @@
cmdutil.checkunfinished(repo)
cmdutil.bailifchanged(repo)
- node = scmutil.revsingle(repo, rev).node()
+ ctx = scmutil.revsingle(repo, rev)
+ node = ctx.node()
op1, op2 = repo.dirstate.parents()
if not repo.changelog.isancestor(node, op1):
@@ -821,14 +822,7 @@
with dirstateguard.dirstateguard(repo, b'backout'):
overrides = {(b'ui', b'forcemerge'): opts.get(b'tool', b'')}
with ui.configoverride(overrides, b'backout'):
- stats = mergemod.update(
- repo,
- parent,
- branchmerge=True,
- force=True,
- ancestor=node,
- mergeancestor=False,
- )
+ stats = mergemod.back_out(ctx, parent=repo[parent])
repo.setparents(op1, op2)
hg._showstats(repo, stats)
if stats.unresolvedcount: