test-subrepo
112 lines
| 1.6 KiB
| text/plain
|
TextLexer
/ tests / test-subrepo
|
r8816 | #!/bin/sh | ||
rm -rf sub | ||||
mkdir sub | ||||
cd sub | ||||
hg init t | ||||
cd t | ||||
echo % first revision, no sub | ||||
echo a > a | ||||
hg ci -Am0 | ||||
echo % add first sub | ||||
echo s = s > .hgsub | ||||
hg add .hgsub | ||||
hg init s | ||||
echo a > s/a | ||||
hg -R s ci -Ams0 | ||||
hg ci -m1 | ||||
echo % add sub sub | ||||
echo ss = ss > s/.hgsub | ||||
hg init s/ss | ||||
echo a > s/ss/a | ||||
hg -R s add s/.hgsub | ||||
hg -R s/ss add s/ss/a | ||||
hg ci -m2 | ||||
echo % bump sub rev | ||||
echo b > s/a | ||||
hg -R s ci -ms1 | ||||
hg ci -m3 | ||||
echo % leave sub dirty | ||||
echo c > s/a | ||||
hg ci -m4 | ||||
hg tip -R s | ||||
echo % check caching | ||||
hg co 0 | ||||
hg debugsub | ||||
echo % restore | ||||
hg co | ||||
hg debugsub | ||||
echo % new branch for merge tests | ||||
hg co 1 | ||||
echo t = t >> .hgsub | ||||
hg init t | ||||
echo t > t/t | ||||
hg -R t add t | ||||
echo % 5 | ||||
hg ci -m5 # add sub | ||||
echo t2 > t/t | ||||
echo % 6 | ||||
hg st -R s | ||||
hg ci -m6 # change sub | ||||
hg debugsub | ||||
echo t3 > t/t | ||||
echo % 7 | ||||
hg ci -m7 # change sub again for conflict test | ||||
hg rm .hgsub | ||||
echo % 8 | ||||
hg ci -m8 # remove sub | ||||
echo % merge tests | ||||
hg co -C 3 | ||||
hg merge 5 # test adding | ||||
hg debugsub | ||||
hg ci -m9 | ||||
hg merge 6 --debug # test change | ||||
hg debugsub | ||||
echo conflict > t/t | ||||
hg ci -m10 | ||||
HGMERGE=internal:merge hg merge --debug 7 # test conflict | ||||
echo % should conflict | ||||
cat t/t | ||||
echo % clone | ||||
cd .. | ||||
hg clone t tc | ||||
cd tc | ||||
hg debugsub | ||||
echo % push | ||||
echo bah > t/t | ||||
hg ci -m11 | ||||
hg push | sed 's/ .*sub/ ...sub/g' | ||||
echo % push -f | ||||
echo bah > s/a | ||||
hg ci -m12 | ||||
hg push | sed 's/ .*sub/ ...sub/g' | ||||
hg push -f | sed 's/ .*sub/ ...sub/g' | ||||
echo % update | ||||
cd ../t | ||||
hg up -C # discard our earlier merge | ||||
echo blah > t/t | ||||
hg ci -m13 | ||||
echo % pull | ||||
cd ../tc | ||||
hg pull | sed 's/ .*sub/ ...sub/g' | ||||
hg up # should pull t | ||||
cat t/t | ||||
|
r10177 | |||
echo % bogus subrepo path aborts | ||||
echo 'bogus=[boguspath' >> .hgsub | ||||
hg ci -m 'bogus subrepo path' | ||||
exit 0 | ||||