##// END OF EJS Templates
help: adding a topic on flags...
help: adding a topic on flags This is a short topic to explain how command-line flags can be specified. Some users have been confused by hg offerring different flag syntax than some other libraries, so it'd be nice to point them to this rather than explaining it every time. Differential Revision: https://phab.mercurial-scm.org/D1270

File last commit:

r34662:eb586ed5 default
r35036:b0262b25 default
Show More
test-pull-pull-corruption.t
75 lines | 1.7 KiB | text/troff | Tads3Lexer
/ tests / test-pull-pull-corruption.t
Matt Mackall
tests: unify test-pull-pull-corruption
r12481 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 one repo with a shorter history
$ hg clone -r 0 source1 source2
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
Denis Laxalde
transaction-summary: show the range of new revisions upon pull/unbundle (BC)...
r34662 new changesets 495a0ec48aaf
Matt Mackall
tests: unify test-pull-pull-corruption
r12481 updating to branch default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ cd source2
$ echo a >> foo
$ hg ci -m a
$ cd ..
create a third repo to pull both other repos into it
$ hg init corrupted
$ cd corrupted
use a hook to make the second pull start while the first one is still running
$ echo '[hooks]' >> .hg/hgrc
$ echo 'prechangegroup = sleep 5' >> .hg/hgrc
start a pull...
Mads Kiilerich
tests: remove race in test-pull-pull-corruption.t...
r16481 $ hg pull ../source1 > pull.out 2>&1 &
Matt Mackall
tests: unify test-pull-pull-corruption
r12481
... and start another pull before the first one has finished
$ sleep 1
$ hg pull ../source2 2>/dev/null
pulling from ../source2
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files (+1 heads)
Denis Laxalde
transaction-summary: show the range of new revisions upon pull/unbundle (BC)...
r34662 new changesets ca3c05af513e
Matt Mackall
tests: unify test-pull-pull-corruption
r12481 (run 'hg heads' to see heads, 'hg merge' to merge)
Mads Kiilerich
tests: remove race in test-pull-pull-corruption.t...
r16481 $ cat pull.out
pulling from ../source1
requesting all changes
adding changesets
adding manifests
adding file changes
added 10 changesets with 10 changes to 1 files
Denis Laxalde
transaction-summary: show the range of new revisions upon pull/unbundle (BC)...
r34662 new changesets 495a0ec48aaf:1e7b6c812ca8
Mads Kiilerich
tests: remove race in test-pull-pull-corruption.t...
r16481 (run 'hg update' to get a working copy)
Matt Mackall
tests: unify test-pull-pull-corruption
r12481
see the result
$ wait
$ hg verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
1 files, 11 changesets, 11 total revisions
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
$ cd ..