annotate tests/test-pull @ 5909:f45f7390c1c5

strip: calculate list of extra nodes to save and pass it to changegroupsubset When we remove revision N from the repository, all revisions >= N are affected: either it's a descendant from N and will also be removed, or it's not a descendant of N and will be renumbered. As a consequence, we have to (at least temporarily) remove all filelog and manifest revisions that have a linkrev >= N, readding some of them later. Unfortunately, it's possible to have a revlog with two revisions r1 and r2 such that r1 < r2, but linkrev(r1) > linkrev(r2). If we try to strip revision linkrev(r1) from the repository, we'll also lose revision r2 when we truncate this revlog. We already use changegroupsubset to create a temporary changegroup containing the revisions that have to be restored, but that function is unable to detect that we also wanted to save the r2 in the case above. So we manually calculate these extra nodes and pass it to changegroupsubset. This should fix issue764.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Sat, 19 Jan 2008 18:01:16 -0200
parents e3a0c092b4e2
children 2770d03ae49f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
544
3d4d5f2aba9a Remove bashisms and use /bin/sh instead of /bin/bash.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 522
diff changeset
1 #!/bin/sh
336
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
2
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
3 mkdir test
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
4 cd test
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
5 echo foo>foo
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
6 hg init
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
7 hg addremove
749
7e4843b7efd2 Update tests to use commit -m and default -u
mpm@selenic.com
parents: 642
diff changeset
8 hg commit -m 1
336
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
9 hg verify
5384
e3a0c092b4e2 Allow tests to run in parallel.
Bryan O'Sullivan <bos@serpentine.com>
parents: 4891
diff changeset
10 hg serve -p $HGPORT -d --pid-file=hg.pid
2571
83cfd95eafb5 tests: add timeouts, make run-tests.py clean up dead daemon processes
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
11 cat hg.pid >> $DAEMON_PIDS
336
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
12 cd ..
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
13
5384
e3a0c092b4e2 Allow tests to run in parallel.
Bryan O'Sullivan <bos@serpentine.com>
parents: 4891
diff changeset
14 http_proxy= hg clone --pull http://localhost:$HGPORT/ copy | sed -e 's,:[0-9][0-9]*/,/,'
336
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
15 cd copy
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
16 hg verify
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
17 hg co
aa6cbde09f72 Add some more tests
mpm@selenic.com
parents:
diff changeset
18 cat foo
3736
ad3d5b4367cb make manifest friendlier
Matt Mackall <mpm@selenic.com>
parents: 2612
diff changeset
19 hg manifest --debug
5384
e3a0c092b4e2 Allow tests to run in parallel.
Bryan O'Sullivan <bos@serpentine.com>
parents: 4891
diff changeset
20 hg pull | sed -e 's,:[0-9][0-9]*/,/,'
4891
2d545b98a7bc issue 622: pull/unbundle -u updates to default branch if repo was empty
Bryan O'Sullivan <bos@serpentine.com>
parents: 3736
diff changeset
21
2d545b98a7bc issue 622: pull/unbundle -u updates to default branch if repo was empty
Bryan O'Sullivan <bos@serpentine.com>
parents: 3736
diff changeset
22 echo % issue 622
2d545b98a7bc issue 622: pull/unbundle -u updates to default branch if repo was empty
Bryan O'Sullivan <bos@serpentine.com>
parents: 3736
diff changeset
23 cd ..
2d545b98a7bc issue 622: pull/unbundle -u updates to default branch if repo was empty
Bryan O'Sullivan <bos@serpentine.com>
parents: 3736
diff changeset
24 hg init empty
2d545b98a7bc issue 622: pull/unbundle -u updates to default branch if repo was empty
Bryan O'Sullivan <bos@serpentine.com>
parents: 3736
diff changeset
25 cd empty
2d545b98a7bc issue 622: pull/unbundle -u updates to default branch if repo was empty
Bryan O'Sullivan <bos@serpentine.com>
parents: 3736
diff changeset
26 hg pull -u ../test