annotate tests/test-filebranch @ 2906:453097750fbf

extdiff: fix bugs. add test.
author Vadim Gelfer <vadim.gelfer@gmail.com>
date Mon, 14 Aug 2006 15:51:35 -0700
parents e506c14382fd
children ad3d5b4367cb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
990
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
1 #!/bin/sh
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
2
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
3 # This test makes sure that we don't mark a file as merged with its ancestor
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
4 # when we do a merge.
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
5
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
6 cat <<'EOF' > merge
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
7 #!/bin/sh
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
8 echo merging for `basename $1`
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
9 EOF
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
10 chmod +x merge
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
11
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
12 echo creating base
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
13 hg init a
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
14 cd a
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
15 echo 1 > foo
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
16 echo 1 > bar
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
17 echo 1 > baz
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
18 echo 1 > quux
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
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
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
21
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
22 cd ..
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
23 hg clone a b
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
24
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
25 echo creating branch a
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
26 cd a
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
27 echo 2a > foo
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
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
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
30
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
31 echo creating branch b
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
32
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
33 cd ..
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
34 cd b
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
35 echo 2b > foo
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
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
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
38
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
39 echo "we shouldn't have anything but n state here"
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
40 hg debugstate | cut -b 1-16,35-
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
41
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
42 echo merging
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
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
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
45
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
46 echo 2m > foo
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
47 echo 2b > baz
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
48 echo new > quux
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
49
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
50 echo "we shouldn't have anything but foo in merge state here"
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
51 hg debugstate | cut -b 1-16,35- | grep "^m"
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
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
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
54
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
55 echo "main: we should have a merge here"
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
56 hg debugindex .hg/00changelog.i
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
57
993
6f274afc05c7 Clean up some merge logic
mpm@selenic.com
parents: 990
diff changeset
58 echo "log should show foo and quux changed"
6f274afc05c7 Clean up some merge logic
mpm@selenic.com
parents: 990
diff changeset
59 hg log -v -r tip
6f274afc05c7 Clean up some merge logic
mpm@selenic.com
parents: 990
diff changeset
60
990
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
61 echo "foo: we should have a merge here"
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
62 hg debugindex .hg/data/foo.i
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
63
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
64 echo "bar: we shouldn't have a merge here"
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
65 hg debugindex .hg/data/bar.i
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
66
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
67 echo "baz: we shouldn't have a merge here"
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
68 hg debugindex .hg/data/baz.i
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
69
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
70 echo "quux: we shouldn't have a merge here"
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
71 hg debugindex .hg/data/quux.i
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
72
993
6f274afc05c7 Clean up some merge logic
mpm@selenic.com
parents: 990
diff changeset
73 echo "manifest entries should match tips of all files"
6f274afc05c7 Clean up some merge logic
mpm@selenic.com
parents: 990
diff changeset
74 hg manifest
6f274afc05c7 Clean up some merge logic
mpm@selenic.com
parents: 990
diff changeset
75
990
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
76 echo "everything should be clean now"
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
77 hg status
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
78
5007e0bdeed2 Fix long-standing excessive file merges
mpm@selenic.com
parents:
diff changeset
79 hg verify