help with use case

Thomas Arendsen Hein thomas at intevation.de
Mon Dec 19 10:24:07 UTC 2005


* Zbynek Winkler <zwin at users.sourceforge.net> [20051219 11:17]:
> Thomas Arendsen Hein wrote:
> >Now amalgamate (with a separate repo):
> >cd ..
> >hg clone source amalgamate
> >cd amalgamate
> >hg pull ../scratch
> >hg revert -r tip
> >hg ci (Maybe you need -A to add/remove files;
> >      use "hg out -v default" to get the changelog)
> >cd ../source
> >hg pull -r tip ../amalgamate
> >
> >Or more complicated, but without a separate repo:
> >hg co `hg -R ../source -q tip|cut -d: -f2`
> >hg revert -r tip
> >hg ci (Maybe you need -A to add/remove files;
> >      use "hg out -v default" to get the changelog)
> >cd ../source
> >hg pull -r tip ../scratch
>
> I am not quite sure I understand what is going here.
> 
> The key seems to be the checkout (to get the working dir to k) followed 
> revert (to keep the parent the same but move the working dir to the 
> k+2), and commiting.

Correct, this creates a new head with only one large changeset.

> The "pull -r" then pulls only the revisions 
> required for the "tip", right?

pull -r pulls all changesets between the common base and the
specified revision (the new large head). In this case it is only one
changeset, but in general pull -r can pull many.

Thomas

-- 
Email: thomas at intevation.de
http://intevation.de/~thomas/



More information about the Mercurial mailing list