[Python-Dev] Backport troubles with mercurial

Amaury Forgeot d'Arc amauryfa at gmail.com
Wed Dec 29 09:02:23 CET 2010


2010/12/29 David Cournapeau <cournape at gmail.com>

> The easiest way I found to emulate git cherry-pick (which does exactly
> what you want) with hg is to use import/export commands:
> http://mercurial.selenic.com/wiki/CommunicatingChanges
>
> It is indeed quite a pain to use in my experience, because you cannot
> easily refer to the original commit the cherry pick is coming from
> (i.e. no equivalent to git cherry-pick -x), and the conflict
> resolution is quite dumb.
>

This is precisely why I proposed a specific example.
Which precise steps do you take?
How much typing or manual copy/paste is required for this very simple case?
Can you do the merge in less than 10 minutes?

And finally the biased question:
can you find one improvement over the current situation with svn?

One alternative is to be careful about where
> you apply your patch
> (
> http://stackoverflow.com/questions/3926906/what-is-the-most-efficient-way-to-handle-hg-import-rejects
> ),
> but that's not very convenient either.
>

I've read all this, and this method does not work, for several reasons:

- py3k / 2.7 / 3.1 cannot be ordered, there is no "earliest possible
parent"..
we usually consider py3k as a child of both 2.7 and 3.1, and there is no
common parent.

- even if there was one, there is the problem of changes specifically made
for 2.7
that make no sense in py3k. You'd have to perform a "dummy merge" to py3k
which has the disadvantage of cluttering the py3k change log. And think of
the horror
if someone forgets this dummy merge.

- in any case, the actual repositories in http://code.python.org/hg/ are not
clones
of each other, so "hg merge" won't work and "hg pull" will clone the whole
remote repository.
(btw, now that I have "hg pull" another repo, how can I remove it? is my
clone broken forever?)

-- 
Amaury Forgeot d'Arc
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20101229/a6876c77/attachment-0001.html>


More information about the Python-Dev mailing list