diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py --- a/mercurial/localrepo.py +++ b/mercurial/localrepo.py @@ -1679,13 +1679,13 @@ class localrepository(repo.repository): # We can pick: # * missingheads part of comon (::commonheads) common = set(outgoing.common) - cheads = [n for node in revs if n in common] + cheads = [node for node in revs if node in common] # and # * commonheads parents on missing - rvset = repo.revset('%ln and parents(roots(%ln))', - outgoing.commonheads, - outgoing.missing) - cheads.extend(c.node() for c in rvset) + revset = self.set('%ln and parents(roots(%ln))', + outgoing.commonheads, + outgoing.missing) + cheads.extend(c.node() for c in revset) # even when we don't push, exchanging phase data is useful remotephases = remote.listkeys('phases') if not remotephases: # old server or public only repo