author | Patrick Mezard <pmezard@gmail.com> |
Mon, 10 May 2010 22:46:16 +0200 | |
changeset 11141 | df5d1d571d27 |
parent 11110 | 22f5ad0b5857 |
permissions | -rwxr-xr-x |
11110
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
1 |
#!/bin/sh |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
2 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
3 |
echo % Preparing the subrepository 'sub2' |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
4 |
hg init sub2 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
5 |
echo sub2 > sub2/sub2 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
6 |
hg add -R sub2 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
7 |
hg commit -R sub2 -m "sub2 import" |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
8 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
9 |
echo % Preparing the 'sub1' repo which depends on the subrepo 'sub2' |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
10 |
hg init sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
11 |
echo sub1 > sub1/sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
12 |
echo "sub2 = ../sub2" > sub1/.hgsub |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
13 |
hg clone sub2 sub1/sub2 | sed 's/ .*sub/ ...sub/g' |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
14 |
hg add -R sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
15 |
hg commit -R sub1 -m "sub1 import" |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
16 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
17 |
echo % Preparing the 'main' repo which depends on the subrepo 'sub1' |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
18 |
hg init main |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
19 |
echo main > main/main |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
20 |
echo "sub1 = ../sub1" > main/.hgsub |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
21 |
hg clone sub1 main/sub1 | sed 's/ .*sub/ ...sub/g' |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
22 |
hg add -R main |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
23 |
hg commit -R main -m "main import" |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
24 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
25 |
echo % Cleaning both repositories, just as a clone -U |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
26 |
hg up -C -R sub2 null |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
27 |
hg up -C -R sub1 null |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
28 |
hg up -C -R main null |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
29 |
rm -rf main/sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
30 |
rm -rf sub1/sub2 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
31 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
32 |
echo % Clone main |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
33 |
hg clone main cloned | sed 's/ .*sub/ ...sub/g' |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
34 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
35 |
echo % Checking cloned repo ids |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
36 |
printf "cloned " ; hg id -R cloned |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
37 |
printf "cloned/sub1 " ; hg id -R cloned/sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
38 |
printf "cloned/sub1/sub2 " ; hg id -R cloned/sub1/sub2 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
39 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
40 |
echo % debugsub output for main and sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
41 |
hg debugsub -R cloned |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
42 |
hg debugsub -R cloned/sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
43 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
44 |
echo % Modifying deeply nested 'sub2' |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
45 |
echo modified > cloned/sub1/sub2/sub2 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
46 |
hg commit -m "deep nested modif should trigger a commit" -R cloned |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
47 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
48 |
echo % Checking modified node ids |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
49 |
printf "cloned " ; hg id -R cloned |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
50 |
printf "cloned/sub1 " ; hg id -R cloned/sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
51 |
printf "cloned/sub1/sub2 " ; hg id -R cloned/sub1/sub2 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
52 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
53 |
echo % debugsub output for main and sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
54 |
hg debugsub -R cloned |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
55 |
hg debugsub -R cloned/sub1 |
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
56 |
|
22f5ad0b5857
subrepo: dirtiness checks should iterate over subrepos
Edouard Gomez <ed.gomez@free.fr>
parents:
diff
changeset
|
57 |
exit 0 |