author | Vadim Gelfer <vadim.gelfer@gmail.com> |
Mon, 07 Aug 2006 19:08:55 -0700 | |
changeset 2797 | df220d0974dd |
parent 2283 | e506c14382fd |
child 3736 | ad3d5b4367cb |
permissions | -rwxr-xr-x |
990 | 1 |
#!/bin/sh |
2 |
||
3 |
# This test makes sure that we don't mark a file as merged with its ancestor |
|
4 |
# when we do a merge. |
|
5 |
||
6 |
cat <<'EOF' > merge |
|
7 |
#!/bin/sh |
|
8 |
echo merging for `basename $1` |
|
9 |
EOF |
|
10 |
chmod +x merge |
|
11 |
||
12 |
echo creating base |
|
13 |
hg init a |
|
14 |
cd a |
|
15 |
echo 1 > foo |
|
16 |
echo 1 > bar |
|
17 |
echo 1 > baz |
|
18 |
echo 1 > quux |
|
19 |
hg add foo bar baz quux |
|
1933
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
993
diff
changeset
|
20 |
hg commit -m "base" -d "1000000 0" |
990 | 21 |
|
22 |
cd .. |
|
23 |
hg clone a b |
|
24 |
||
25 |
echo creating branch a |
|
26 |
cd a |
|
27 |
echo 2a > foo |
|
28 |
echo 2a > bar |
|
1933
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
993
diff
changeset
|
29 |
hg commit -m "branch a" -d "1000000 0" |
990 | 30 |
|
31 |
echo creating branch b |
|
32 |
||
33 |
cd .. |
|
34 |
cd b |
|
35 |
echo 2b > foo |
|
36 |
echo 2b > baz |
|
1933
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
993
diff
changeset
|
37 |
hg commit -m "branch b" -d "1000000 0" |
990 | 38 |
|
39 |
echo "we shouldn't have anything but n state here" |
|
40 |
hg debugstate | cut -b 1-16,35- |
|
41 |
||
42 |
echo merging |
|
43 |
hg pull ../a |
|
2283
e506c14382fd
deprecate 'update -m'. use 'merge' instead.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
44 |
env HGMERGE=../merge hg merge -v |
990 | 45 |
|
46 |
echo 2m > foo |
|
47 |
echo 2b > baz |
|
48 |
echo new > quux |
|
49 |
||
50 |
echo "we shouldn't have anything but foo in merge state here" |
|
51 |
hg debugstate | cut -b 1-16,35- | grep "^m" |
|
52 |
||
1933
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
993
diff
changeset
|
53 |
hg ci -m "merge" -d "1000000 0" |
990 | 54 |
|
55 |
echo "main: we should have a merge here" |
|
56 |
hg debugindex .hg/00changelog.i |
|
57 |
||
993 | 58 |
echo "log should show foo and quux changed" |
59 |
hg log -v -r tip |
|
60 |
||
990 | 61 |
echo "foo: we should have a merge here" |
62 |
hg debugindex .hg/data/foo.i |
|
63 |
||
64 |
echo "bar: we shouldn't have a merge here" |
|
65 |
hg debugindex .hg/data/bar.i |
|
66 |
||
67 |
echo "baz: we shouldn't have a merge here" |
|
68 |
hg debugindex .hg/data/baz.i |
|
69 |
||
70 |
echo "quux: we shouldn't have a merge here" |
|
71 |
hg debugindex .hg/data/quux.i |
|
72 |
||
993 | 73 |
echo "manifest entries should match tips of all files" |
74 |
hg manifest |
|
75 |
||
990 | 76 |
echo "everything should be clean now" |
77 |
hg status |
|
78 |
||
79 |
hg verify |