Mercurial > hg
changeset 20314:b396032e1bb8 stable
phase: properly compute ancestors of --rev on push (issue3786)
Now that discovery is working on unfiltered changeset, I had a good occasion to
look at that bug again. This let me realise that a trivial node vs rev
comparision was the cause of this two years old bugsā¦
Happy second birthday phases!
author | Pierre-Yves David <pierre-yves.david@logilab.fr> |
---|---|
date | Mon, 28 Jan 2013 15:16:49 +0100 |
parents | dcd65ce87260 |
children | 4dd91c466a81 |
files | mercurial/localrepo.py tests/test-phases-exchange.t |
diffstat | 2 files changed, 16 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/localrepo.py Thu Jan 23 01:21:08 2014 +0100 +++ b/mercurial/localrepo.py Mon Jan 28 15:16:49 2013 +0100 @@ -1899,7 +1899,8 @@ # We can pick: # * missingheads part of common (::commonheads) common = set(outgoing.common) - cheads = [node for node in revs if node in common] + nm = self.changelog.nodemap + cheads = [node for node in revs if nm[node] in common] # and # * commonheads parents on missing revset = unfi.set('%ln and parents(roots(%ln))',
--- a/tests/test-phases-exchange.t Thu Jan 23 01:21:08 2014 +0100 +++ b/tests/test-phases-exchange.t Mon Jan 28 15:16:49 2013 +0100 @@ -92,6 +92,20 @@ | o 0 public a-A - 054250a37db4 + $ hg push -r 2 ../beta + pushing to ../beta + searching for changes + no changes found + [1] + $ hgph + @ 3 draft a-D - b555f63b6063 + | + o 2 public a-C - 54acac6f23ab + | + o 1 public a-B - 548a3d25dbf0 + | + o 0 public a-A - 054250a37db4 + $ hg push ../beta pushing to ../beta searching for changes