tests/test-pull
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
Sun, 23 Mar 2008 21:03:24 -0300
changeset 6370 6440e25a1ba3
parent 5384 e3a0c092b4e2
child 9996 2770d03ae49f
permissions -rwxr-xr-x
localrepo.commit: grab locks before getting the list of files to commit Somebody may change the dirstate after we've determined the parents of the working dir and run repo.status, but before we called wlock(). This should also fix issue997, where backout would change a file without changing its size and then call repo.commit without passing the list of files. If this happened in less than one second, we wouldn't detect any file changes - the in-memory dirstate still has the cached stat data for that file. Grabbing the wlock early causes the dirstate to be invalidated and we end up reading the dirstate file again, which has that file marked for lookup (size == -1). A better fix would be for backout to give repo.commit the exact list of files, but that'll require some changes to the revert operation. A significant user-visible change is that the precommit hook is always run with both locks grabbed - previously, hg commit would run it before grabbing any locks, but hg import would run it after grabbing locks.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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