[PATCH STABLE] transplant: use peer of source repository as "remote" for "repo.pull()"
Augie Fackler
raf at durin42.com
Sat Nov 16 11:35:49 CST 2013
On Sat, Nov 16, 2013 at 11:15:55PM +0900, FUJIWARA Katsunori wrote:
> # HG changeset patch
> # User FUJIWARA Katsunori <foozy at lares.dti.ne.jp>
> # Date 1384611260 -32400
> # Sat Nov 16 23:14:20 2013 +0900
> # Node ID f72c10f05a7ed883f92efa2b06dab050d2f6530c
> # Parent c38c3fdc8b9317ba09e03ab09364c3800da7c50c
> transplant: use peer of source repository as "remote" for "repo.pull()"
queued, thanks
>
> Before this patch, transplant with "--merge" option fails with
> traceback unexpectedly, if it causes pull from the source repository
> on the local host.
>
> "discovery.findcommonincoming()" invokes "capable()" method on the
> object given from "localrepository.pull()", but it is
> "localrepository" object in this case and doesn't have such method.
>
> This patch uses peer object of source repository as "remote" argument
> for "localrepository.pull()" invocation like other invocations of it
> in transplant.py.
>
> diff --git a/hgext/transplant.py b/hgext/transplant.py
> --- a/hgext/transplant.py
> +++ b/hgext/transplant.py
> @@ -154,7 +154,7 @@
> # transplants before them fail.
> domerge = True
> if not hasnode(repo, node):
> - repo.pull(source, heads=[node])
> + repo.pull(source.peer(), heads=[node])
>
> skipmerge = False
> if parents[1] != revlog.nullid:
> diff --git a/tests/test-transplant.t b/tests/test-transplant.t
> --- a/tests/test-transplant.t
> +++ b/tests/test-transplant.t
> @@ -430,6 +430,20 @@
> adding manifests
> adding file changes
> added 4 changesets with 4 changes to 4 files
> +
> +test "--merge" causing pull from source repository on local host
> +
> + $ hg --config extensions.mq= -q strip 2
> + $ hg transplant -s ../t --merge tip
> + searching for changes
> + searching for changes
> + adding changesets
> + adding manifests
> + adding file changes
> + added 2 changesets with 2 changes to 2 files
> + applying a53251cdf717
> + 4:a53251cdf717 merged at 4831f4dc831a
> +
> $ cd ..
>
>
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at selenic.com
> http://selenic.com/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list