--- a/mercurial/merge.py Wed Feb 08 22:12:27 2017 -0800
+++ b/mercurial/merge.py Wed Feb 08 14:49:37 2017 -0800
@@ -1556,7 +1556,7 @@
foreground = obsolete.foreground(repo, [p1.node()])
# note: the <node> variable contains a random identifier
if repo[node].node() in foreground:
- pas = [p1] # allow updating to successors
+ pass # allow updating to successors
elif dirty:
msg = _("uncommitted changes")
if onode is None:
@@ -1572,15 +1572,17 @@
raise error.Abort(msg, hint=hint)
else:
# Allow jumping branches if clean and specific rev given
- pas = [p1]
+ pass
+
+ if overwrite:
+ pas = [wc]
+ elif not branchmerge:
+ pas = [p1]
# deprecated config: merge.followcopies
followcopies = repo.ui.configbool('merge', 'followcopies', True)
if overwrite:
- pas = [wc]
followcopies = False
- elif pas == [p2]: # backwards
- pas = [p1]
elif not pas[0]:
followcopies = False
if not branchmerge and not wc.dirty(missing=True):