Mercurial > hg
view tests/test-url-rev @ 7585:075b7ef0f84d
convert/gnuarch: follow continuation-of revisions
Built on top of previous patches:
- continuation-of parsing
- registered archives retrieval
- use of fully qualified revisions
This allows the converter scanning for more source revisions
following the tree versions 'leaked' through the continuation-of
informations. Coupled with the registered archives retrieval, this
makes possible to decide to follow such a hint or stop scanning for
more revisions.
This also implies some changes in the retrieval of some base-0
revisions when they're continuation-of other revisions, in that
case a 'replay' will work where a simple 'get' fails because the
dir exists already. I found the code dealing with 'replay' quite
good as it has already a fallback to 'get' in the error path.
author | Edouard Gomez <ed.gomez@free.fr> |
---|---|
date | Sun, 04 Jan 2009 02:36:48 +0100 |
parents | 20817af258d8 |
children | 6c82beaaa11a |
line wrap: on
line source
#!/bin/sh # test basic functionality of url#rev syntax hg init repo cd repo echo a > a hg ci -qAm 'add a' -d '0 0' hg branch foo echo >> a hg ci -m 'change a' -d '0 0' cd .. echo '% clone repo#foo' hg clone 'repo#foo' clone echo '% heads' hg --cwd clone heads echo '% parents' hg --cwd clone parents sed -e 's/default.*#/default = #/' clone/.hg/hgrc echo echo '% changing original repo' cd repo echo >> a hg ci -m 'new head of branch foo' -d '0 0' hg up -qC default echo bar > bar hg ci -qAm 'add bar' -d '0 0' hg log echo echo '% outgoing' hg -q outgoing '../clone#foo' echo echo '% push' hg -q push '../clone#foo' hg --cwd ../clone heads cd .. echo echo '% rolling back' cd clone hg rollback echo '% incoming' hg -q incoming echo '% pull' hg -q pull hg heads echo echo '% pull should not have updated' hg parents -q echo '% going back to the default branch' hg up -C 0 hg parents echo '% no new revs, no update' hg pull -qu hg parents -q echo '% rollback' hg rollback hg up -C 0 hg parents -q echo '% pull -u takes us back to branch foo' hg pull -qu hg parents echo '% rollback' hg rollback hg up -C 0 echo '% parents' hg parents -q echo '% heads' hg heads -q echo '% pull -u -r otherrev url#rev updates to rev' hg pull -qur default default echo '% parents' hg parents echo '% heads' hg heads