diff --git a/mercurial/merge.py b/mercurial/merge.py --- a/mercurial/merge.py +++ b/mercurial/merge.py @@ -444,15 +444,15 @@ def update(repo, node, branchmerge, forc wlock = working dir lock, if already held """ - if node is None: - node = "tip" - if not wlock: wlock = repo.wlock() + wc = repo.workingctx() + if node is None: + # tip of current branch + node = repo.branchtags()[wc.branch()] overwrite = force and not branchmerge forcemerge = force and branchmerge - wc = repo.workingctx() pl = wc.parents() p1, p2 = pl[0], repo.changectx(node) pa = p1.ancestor(p2)