##// END OF EJS Templates
tests: unify test-merge-internal-tools-pattern
Adrian Buehlmann -
r12257:470e0b1d default
parent child Browse files
Show More
@@ -1,56 +1,111 b''
1 #!/bin/sh
2
3 # make sure that the internal merge tools (internal:fail, internal:local, and
1 # Make sure that the internal merge tools (internal:fail, internal:local, and
4 2 # internal:other) are used when matched by a merge-pattern in hgrc
5 3
6 unset HGMERGE # make sure HGMERGE doesn't interfere with the test
4 Make sure HGMERGE doesn't interfere with the test:
5
6 $ unset HGMERGE
7
8 $ hg init
9
10 Initial file contents:
7 11
8 hg init
12 $ echo "line 1" > f
13 $ echo "line 2" >> f
14 $ echo "line 3" >> f
15 $ hg ci -Am "revision 0"
16 adding f
17
18 $ cat f
19 line 1
20 line 2
21 line 3
22
23 Branch 1: editing line 1:
24
25 $ sed 's/line 1/first line/' f > f.new
26 $ mv f.new f
27 $ hg ci -Am "edited first line"
9 28
10 echo "# initial file contents"
11 echo "line 1" > f
12 echo "line 2" >> f
13 echo "line 3" >> f
14 hg commit -Am "revision 0"
15 cat f
16 echo "# branch 1: editing line 1"
17 sed 's/line 1/first line/' f > f.new
18 mv f.new f
19 hg commit -Am "edited first line"
29 Branch 2: editing line 3:
30
31 $ hg update 0
32 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
33 $ sed 's/line 3/third line/' f > f.new
34 $ mv f.new f
35 $ hg ci -Am "edited third line"
36 created new head
37
38 Merge using internal:fail tool:
39
40 $ echo "[merge-patterns]" > .hg/hgrc
41 $ echo "* = internal:fail" >> .hg/hgrc
20 42
21 echo "# branch 2: editing line 3"
22 hg update 0
23 sed 's/line 3/third line/' f > f.new
24 mv f.new f
25 hg commit -Am "edited third line"
43 $ hg merge
44 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
45 use 'hg resolve' to retry unresolved file merges or 'hg update -C' to abandon
46
47 $ cat f
48 line 1
49 line 2
50 third line
51
52 $ hg stat
53 M f
54
55 Merge using internal:local tool:
26 56
27 echo "# merge using internal:fail tool"
28 echo "[merge-patterns]" > .hg/hgrc
29 echo "* = internal:fail" >> .hg/hgrc
30 hg merge
31 cat f
32 hg stat
57 $ hg update -C 2
58 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
59 $ sed 's/internal:fail/internal:local/' .hg/hgrc > .hg/hgrc.new
60 $ mv .hg/hgrc.new .hg/hgrc
61
62 $ hg merge
63 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
64 (branch merge, don't forget to commit)
65
66 $ cat f
67 line 1
68 line 2
69 third line
33 70
34 echo "# merge using internal:local tool"
35 hg update -C 2
36 sed 's/internal:fail/internal:local/' .hg/hgrc > .hg/hgrc.new
37 mv .hg/hgrc.new .hg/hgrc
38 hg merge
39 cat f
40 hg stat
71 $ hg stat
72 M f
73
74 Merge using internal:other tool:
75
76 $ hg update -C 2
77 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
78 $ sed 's/internal:local/internal:other/' .hg/hgrc > .hg/hgrc.new
79 $ mv .hg/hgrc.new .hg/hgrc
80
81 $ hg merge
82 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
83 (branch merge, don't forget to commit)
41 84
42 echo "# merge using internal:other tool"
43 hg update -C 2
44 sed 's/internal:local/internal:other/' .hg/hgrc > .hg/hgrc.new
45 mv .hg/hgrc.new .hg/hgrc
46 hg merge
47 cat f
48 hg stat
85 $ cat f
86 first line
87 line 2
88 line 3
89
90 $ hg stat
91 M f
92
93 Merge using default tool:
94
95 $ hg update -C 2
96 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
97 $ rm .hg/hgrc
49 98
50 echo "# merge using default tool"
51 hg update -C 2
52 rm .hg/hgrc
53 hg merge
54 cat f
55 hg stat
99 $ hg merge
100 merging f
101 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
102 (branch merge, don't forget to commit)
56 103
104 $ cat f
105 first line
106 line 2
107 third line
108
109 $ hg stat
110 M f
111
1 NO CONTENT: file was removed
General Comments 0
You need to be logged in to leave comments. Login now