Mercurial > hg
view tests/test-pull-pull-corruption2.t @ 13019:42ac864ed394
test-hardlinks: add testcase for repo copied with 'cp -al'
This patch adds a case to test-hardlinks.t which demonstrates that
hardlinks in the working directory are broken up (using 'hg update').
Motivation for this patch:
'hg help clone' shows copying repositories *and* the working directory
using 'cp -al', creating hardlinks in the *working directory* too (not
just in the store).
Note that we can't use 'cp -al' since for example MacOS X doesn't
support these options on cp. I'm thus using the same trick as in
test-hardlinks-safety.t for creating hardlinks in the working dir.
author | Adrian Buehlmann <adrian@cadifra.com> |
---|---|
date | Wed, 17 Nov 2010 16:54:30 +0100 |
parents | 2f8740c639e4 |
children |
line wrap: on
line source
Corrupt an hg repo with two pulls. create one repo with a long history $ hg init source1 $ cd source1 $ touch foo $ hg add foo $ for i in 1 2 3 4 5 6 7 8 9 10; do > echo $i >> foo > hg ci -m $i > done $ cd .. create a third repo to pull both other repos into it $ hg init version2 $ hg -R version2 pull source1 & $ sleep 1 pulling from source1 requesting all changes adding changesets adding manifests adding file changes added 10 changesets with 10 changes to 1 files (run 'hg update' to get a working copy) $ hg clone --pull -U version2 corrupted requesting all changes adding changesets adding manifests adding file changes added 10 changesets with 10 changes to 1 files $ wait $ hg -R corrupted verify checking changesets checking manifests crosschecking files in changesets and manifests checking files 1 files, 10 changesets, 10 total revisions $ hg -R version2 verify checking changesets checking manifests crosschecking files in changesets and manifests checking files 1 files, 10 changesets, 10 total revisions