annotate tests/test-merge-tools.t @ 39183:7a111168659e

tests: stabilize test-merge-tools.t on Windows More fun with `hg import --bypass` to work around Windows limitations. The diffs were generated on Linux, and had a tab to terminate the `+++b/...` lines. But check-code complained about trailing whitespace, and it seems to run without them.
author Matt Harbison <matt_harbison@yahoo.com>
date Sat, 18 Aug 2018 23:39:26 -0400
parents cded904f7acc
children 82555d7186d0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1 test merge-tools configuration - mostly exercising filemerge.py
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
2
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
3 $ unset HGMERGE # make sure HGMERGE doesn't interfere with the test
38029
a4a5c3085ea9 test-merge-tools: create repo directory to free $TESTTMP for temporary files
Yuya Nishihara <yuya@tcha.org>
parents: 37077
diff changeset
4 $ hg init repo
a4a5c3085ea9 test-merge-tools: create repo directory to free $TESTTMP for temporary files
Yuya Nishihara <yuya@tcha.org>
parents: 37077
diff changeset
5 $ cd repo
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
6
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
7 revision 0
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
8
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
9 $ echo "revision 0" > f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
10 $ echo "space" >> f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
11 $ hg commit -Am "revision 0"
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
12 adding f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
13
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
14 revision 1
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
15
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
16 $ echo "revision 1" > f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
17 $ echo "space" >> f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
18 $ hg commit -Am "revision 1"
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
19 $ hg update 0 > /dev/null
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
20
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
21 revision 2
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
22
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
23 $ echo "revision 2" > f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
24 $ echo "space" >> f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
25 $ hg commit -Am "revision 2"
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
26 created new head
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
27 $ hg update 0 > /dev/null
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
28
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
29 revision 3 - simple to merge
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
30
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
31 $ echo "revision 3" >> f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
32 $ hg commit -Am "revision 3"
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
33 created new head
22029
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
34
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
35 revision 4 - hard to merge
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
36
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
37 $ hg update 0 > /dev/null
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
38 $ echo "revision 4" > f
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
39 $ hg commit -Am "revision 4"
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
40 created new head
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
41
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
42 $ echo "[merge-tools]" > .hg/hgrc
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
43
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
44 $ beforemerge() {
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
45 > cat .hg/hgrc
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
46 > echo "# hg update -C 1"
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
47 > hg update -C 1 > /dev/null
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
48 > }
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
49 $ aftermerge() {
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
50 > echo "# cat f"
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
51 > cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
52 > echo "# hg stat"
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
53 > hg stat
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
54 > echo "# hg resolve --list"
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
55 > hg resolve --list
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
56 > rm -f f.orig
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
57 > }
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
58
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
59 Tool selection
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
60
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
61 default is internal merge:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
62
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
63 $ beforemerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
64 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
65 # hg update -C 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
66
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
67 hg merge -r 2
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
68 override $PATH to ensure hgmerge not visible; use $PYTHON in case we're
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
69 running from a devel copy, not a temp installation
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
70
26168
b907051df5b7 test-merge-tools: include /usr/sbin in path for sysctl (issue4813)
timeless@mozdev.org
parents: 25753
diff changeset
71 $ PATH="$BINDIR:/usr/sbin" $PYTHON "$BINDIR"/hg merge -r 2
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
72 merging f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
73 warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
74 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
75 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
76 [1]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
77 $ aftermerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
78 # cat f
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30062
diff changeset
79 <<<<<<< working copy: ef83787e2614 - test: revision 1
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
80 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
81 =======
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
82 revision 2
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30062
diff changeset
83 >>>>>>> merge rev: 0185f4e0cf02 - test: revision 2
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
84 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
85 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
86 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
87 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
88 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
89 U f
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
90
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
91 simplest hgrc using false for merge:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
92
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
93 $ echo "false.whatever=" >> .hg/hgrc
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
94 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
95 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
96 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
97 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
98 $ hg merge -r 2
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
99 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
100 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
101 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
102 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
103 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
104 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
105 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
106 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
107 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
108 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
109 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
110 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
111 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
112 U f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
113
24809
32d0d2f38910 tests: fix portability issue with test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 24121
diff changeset
114 #if unix-permissions
32d0d2f38910 tests: fix portability issue with test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 24121
diff changeset
115
15545
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
116 unexecutable file in $PATH shouldn't be found:
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
117
24809
32d0d2f38910 tests: fix portability issue with test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 24121
diff changeset
118 $ echo "echo fail" > false
15545
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
119 $ hg up -qC 1
26168
b907051df5b7 test-merge-tools: include /usr/sbin in path for sysctl (issue4813)
timeless@mozdev.org
parents: 25753
diff changeset
120 $ PATH="`pwd`:$BINDIR:/usr/sbin" $PYTHON "$BINDIR"/hg merge -r 2
15545
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
121 merging f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
122 warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
15545
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
123 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
124 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
15545
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
125 [1]
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
126 $ rm false
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
127
24809
32d0d2f38910 tests: fix portability issue with test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 24121
diff changeset
128 #endif
32d0d2f38910 tests: fix portability issue with test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 24121
diff changeset
129
15545
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
130 executable directory in $PATH shouldn't be found:
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
131
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
132 $ mkdir false
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
133 $ hg up -qC 1
26168
b907051df5b7 test-merge-tools: include /usr/sbin in path for sysctl (issue4813)
timeless@mozdev.org
parents: 25753
diff changeset
134 $ PATH="`pwd`:$BINDIR:/usr/sbin" $PYTHON "$BINDIR"/hg merge -r 2
15545
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
135 merging f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
136 warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
15545
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
137 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
138 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
15545
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
139 [1]
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
140 $ rmdir false
2607de602105 tests: test findexe() access check fixed in 58f96703a9ab
Mads Kiilerich <mads@kiilerich.com>
parents: 15524
diff changeset
141
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
142 true with higher .priority gets precedence:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
143
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
144 $ echo "true.priority=1" >> .hg/hgrc
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
145 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
146 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
147 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
148 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
149 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
150 $ hg merge -r 2
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
151 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
152 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
153 (branch merge, don't forget to commit)
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
154 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
155 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
156 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
157 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
158 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
159 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
160 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
161 R f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
162
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
163 unless lowered on command line:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
164
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
165 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
166 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
167 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
168 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
169 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
170 $ hg merge -r 2 --config merge-tools.true.priority=-7
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
171 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
172 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
173 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
174 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
175 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
176 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
177 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
178 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
179 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
180 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
181 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
182 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
183 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
184 U f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
185
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
186 or false set higher on command line:
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
187
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
188 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
189 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
190 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
191 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
192 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
193 $ hg merge -r 2 --config merge-tools.false.priority=117
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
194 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
195 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
196 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
197 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
198 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
199 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
200 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
201 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
202 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
203 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
204 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
205 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
206 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
207 U f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
208
26730
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
209 or true set to disabled:
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
210 $ beforemerge
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
211 [merge-tools]
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
212 false.whatever=
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
213 true.priority=1
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
214 # hg update -C 1
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
215 $ hg merge -r 2 --config merge-tools.true.disabled=yes
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
216 merging f
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
217 merging f failed!
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
218 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
219 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
26730
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
220 [1]
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
221 $ aftermerge
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
222 # cat f
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
223 revision 1
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
224 space
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
225 # hg stat
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
226 M f
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
227 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
228 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
229 U f
26730
a1e43e85d294 merge-tools: allow marking a mergetool as completely disabled
Augie Fackler <augie@google.com>
parents: 26614
diff changeset
230
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
231 or true.executable not found in PATH:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
232
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
233 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
234 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
235 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
236 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
237 # hg update -C 1
17492
973c2b0b403c spelling: nonexistent
timeless@mozdev.org
parents: 16972
diff changeset
238 $ hg merge -r 2 --config merge-tools.true.executable=nonexistentmergetool
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
239 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
240 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
241 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
242 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
243 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
244 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
245 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
246 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
247 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
248 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
249 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
250 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
251 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
252 U f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
253
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
254 or true.executable with bogus path:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
255
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
256 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
257 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
258 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
259 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
260 # hg update -C 1
17492
973c2b0b403c spelling: nonexistent
timeless@mozdev.org
parents: 16972
diff changeset
261 $ hg merge -r 2 --config merge-tools.true.executable=/nonexistent/mergetool
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
262 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
263 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
264 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
265 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
266 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
267 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
268 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
269 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
270 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
271 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
272 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
273 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
274 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
275 U f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
276
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
277 but true.executable set to cat found in PATH works:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
278
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
279 $ echo "true.executable=cat" >> .hg/hgrc
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
280 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
281 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
282 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
283 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
284 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
285 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
286 $ hg merge -r 2
13439
d724a69309e0 util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
287 merging f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
288 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
289 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
290 revision 0
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
291 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
292 revision 2
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
293 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
294 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
295 (branch merge, don't forget to commit)
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
296 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
297 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
298 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
299 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
300 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
301 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
302 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
303 R f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
304
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
305 and true.executable set to cat with path works:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
306
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
307 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
308 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
309 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
310 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
311 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
312 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
313 $ hg merge -r 2 --config merge-tools.true.executable=cat
13439
d724a69309e0 util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
314 merging f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
315 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
316 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
317 revision 0
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
318 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
319 revision 2
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
320 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
321 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
322 (branch merge, don't forget to commit)
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
323 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
324 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
325 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
326 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
327 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
328 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
329 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
330 R f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
331
38041
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
332 executable set to python script that succeeds:
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
333
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
334 $ cat > "$TESTTMP/myworkingmerge.py" <<EOF
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
335 > def myworkingmergefn(ui, repo, args, **kwargs):
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
336 > return False
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
337 > EOF
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
338 $ beforemerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
339 [merge-tools]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
340 false.whatever=
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
341 true.priority=1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
342 true.executable=cat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
343 # hg update -C 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
344 $ hg merge -r 2 --config merge-tools.true.executable="python:$TESTTMP/myworkingmerge.py:myworkingmergefn"
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
345 merging f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
346 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
347 (branch merge, don't forget to commit)
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
348 $ aftermerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
349 # cat f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
350 revision 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
351 space
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
352 # hg stat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
353 M f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
354 # hg resolve --list
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
355 R f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
356
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
357 executable set to python script that fails:
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
358
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
359 $ cat > "$TESTTMP/mybrokenmerge.py" <<EOF
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
360 > def mybrokenmergefn(ui, repo, args, **kwargs):
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
361 > ui.write(b"some fail message\n")
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
362 > return True
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
363 > EOF
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
364 $ beforemerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
365 [merge-tools]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
366 false.whatever=
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
367 true.priority=1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
368 true.executable=cat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
369 # hg update -C 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
370 $ hg merge -r 2 --config merge-tools.true.executable="python:$TESTTMP/mybrokenmerge.py:mybrokenmergefn"
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
371 merging f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
372 some fail message
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
373 abort: $TESTTMP/mybrokenmerge.py hook failed
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
374 [255]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
375 $ aftermerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
376 # cat f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
377 revision 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
378 space
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
379 # hg stat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
380 ? f.orig
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
381 # hg resolve --list
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
382 U f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
383
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
384 executable set to python script that is missing function:
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
385
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
386 $ beforemerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
387 [merge-tools]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
388 false.whatever=
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
389 true.priority=1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
390 true.executable=cat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
391 # hg update -C 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
392 $ hg merge -r 2 --config merge-tools.true.executable="python:$TESTTMP/myworkingmerge.py:missingFunction"
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
393 merging f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
394 abort: $TESTTMP/myworkingmerge.py does not have function: missingFunction
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
395 [255]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
396 $ aftermerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
397 # cat f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
398 revision 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
399 space
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
400 # hg stat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
401 ? f.orig
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
402 # hg resolve --list
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
403 U f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
404
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
405 executable set to missing python script:
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
406
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
407 $ beforemerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
408 [merge-tools]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
409 false.whatever=
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
410 true.priority=1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
411 true.executable=cat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
412 # hg update -C 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
413 $ hg merge -r 2 --config merge-tools.true.executable="python:$TESTTMP/missingpythonscript.py:mergefn"
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
414 merging f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
415 abort: loading python merge script failed: $TESTTMP/missingpythonscript.py
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
416 [255]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
417 $ aftermerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
418 # cat f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
419 revision 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
420 space
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
421 # hg stat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
422 ? f.orig
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
423 # hg resolve --list
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
424 U f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
425
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
426 executable set to python script but callable function is missing:
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
427
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
428 $ beforemerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
429 [merge-tools]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
430 false.whatever=
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
431 true.priority=1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
432 true.executable=cat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
433 # hg update -C 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
434 $ hg merge -r 2 --config merge-tools.true.executable="python:$TESTTMP/myworkingmerge.py"
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
435 abort: invalid 'python:' syntax: python:$TESTTMP/myworkingmerge.py
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
436 [255]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
437 $ aftermerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
438 # cat f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
439 revision 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
440 space
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
441 # hg stat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
442 # hg resolve --list
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
443 U f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
444
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
445 executable set to python script but callable function is empty string:
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
446
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
447 $ beforemerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
448 [merge-tools]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
449 false.whatever=
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
450 true.priority=1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
451 true.executable=cat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
452 # hg update -C 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
453 $ hg merge -r 2 --config merge-tools.true.executable="python:$TESTTMP/myworkingmerge.py:"
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
454 abort: invalid 'python:' syntax: python:$TESTTMP/myworkingmerge.py:
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
455 [255]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
456 $ aftermerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
457 # cat f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
458 revision 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
459 space
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
460 # hg stat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
461 # hg resolve --list
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
462 U f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
463
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
464 executable set to python script but callable function is missing and path contains colon:
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
465
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
466 $ beforemerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
467 [merge-tools]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
468 false.whatever=
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
469 true.priority=1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
470 true.executable=cat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
471 # hg update -C 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
472 $ hg merge -r 2 --config merge-tools.true.executable="python:$TESTTMP/some:dir/myworkingmerge.py"
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
473 abort: invalid 'python:' syntax: python:$TESTTMP/some:dir/myworkingmerge.py
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
474 [255]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
475 $ aftermerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
476 # cat f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
477 revision 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
478 space
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
479 # hg stat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
480 # hg resolve --list
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
481 U f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
482
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
483 executable set to python script filename that contains spaces:
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
484
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
485 $ mkdir -p "$TESTTMP/my path"
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
486 $ cat > "$TESTTMP/my path/my working merge with spaces in filename.py" <<EOF
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
487 > def myworkingmergefn(ui, repo, args, **kwargs):
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
488 > return False
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
489 > EOF
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
490 $ beforemerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
491 [merge-tools]
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
492 false.whatever=
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
493 true.priority=1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
494 true.executable=cat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
495 # hg update -C 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
496 $ hg merge -r 2 --config "merge-tools.true.executable=python:$TESTTMP/my path/my working merge with spaces in filename.py:myworkingmergefn"
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
497 merging f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
498 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
499 (branch merge, don't forget to commit)
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
500 $ aftermerge
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
501 # cat f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
502 revision 1
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
503 space
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
504 # hg stat
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
505 M f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
506 # hg resolve --list
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
507 R f
242eb5132203 filemerge: support specifying a python function to custom merge-tools
hindlemail <tom_hindle@sil.org>
parents: 38029
diff changeset
508
16972
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16967
diff changeset
509 #if unix-permissions
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16967
diff changeset
510
15264
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
511 environment variables in true.executable are handled:
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
512
19264
eac114e13b96 tests: avoid writing files to HGTMP
Matt Mackall <mpm@selenic.com>
parents: 18325
diff changeset
513 $ echo 'echo "custom merge tool"' > .hg/merge.sh
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
514 $ beforemerge
15264
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
515 [merge-tools]
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
516 false.whatever=
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
517 true.priority=1
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
518 true.executable=cat
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
519 # hg update -C 1
16967
30cfa286947c test-merge-tools: adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16961
diff changeset
520 $ hg --config merge-tools.true.executable='sh' \
19264
eac114e13b96 tests: avoid writing files to HGTMP
Matt Mackall <mpm@selenic.com>
parents: 18325
diff changeset
521 > --config merge-tools.true.args=.hg/merge.sh \
16967
30cfa286947c test-merge-tools: adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16961
diff changeset
522 > merge -r 2
15264
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
523 merging f
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
524 custom merge tool
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
525 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
526 (branch merge, don't forget to commit)
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
527 $ aftermerge
15264
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
528 # cat f
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
529 revision 1
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
530 space
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
531 # hg stat
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
532 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
533 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
534 R f
15264
157d93c41c10 merge: expand environment variables and ~/ in tool.executable
Greg Ward <greg@gerg.ca>
parents: 15243
diff changeset
535
16972
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16967
diff changeset
536 #endif
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16967
diff changeset
537
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
538 Tool selection and merge-patterns
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
539
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
540 merge-patterns specifies new tool false:
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
541
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
542 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
543 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
544 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
545 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
546 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
547 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
548 $ hg merge -r 2 --config merge-patterns.f=false
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
549 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
550 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
551 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
552 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
553 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
554 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
555 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
556 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
557 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
558 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
559 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
560 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
561 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
562 U f
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
563
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
564 merge-patterns specifies executable not found in PATH and gets warning:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
565
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
566 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
567 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
568 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
569 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
570 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
571 # hg update -C 1
17492
973c2b0b403c spelling: nonexistent
timeless@mozdev.org
parents: 16972
diff changeset
572 $ hg merge -r 2 --config merge-patterns.f=true --config merge-tools.true.executable=nonexistentmergetool
32254
177742666abd filemerge: make warning message more i18n friendly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32253
diff changeset
573 couldn't find merge tool true (for pattern f)
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
574 merging f
32254
177742666abd filemerge: make warning message more i18n friendly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32253
diff changeset
575 couldn't find merge tool true (for pattern f)
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
576 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
577 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
578 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
579 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
580 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
581 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
582 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
583 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
584 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
585 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
586 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
587 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
588 U f
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
589
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
590 merge-patterns specifies executable with bogus path and gets warning:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
591
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
592 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
593 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
594 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
595 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
596 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
597 # hg update -C 1
17492
973c2b0b403c spelling: nonexistent
timeless@mozdev.org
parents: 16972
diff changeset
598 $ hg merge -r 2 --config merge-patterns.f=true --config merge-tools.true.executable=/nonexistent/mergetool
32254
177742666abd filemerge: make warning message more i18n friendly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32253
diff changeset
599 couldn't find merge tool true (for pattern f)
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
600 merging f
32254
177742666abd filemerge: make warning message more i18n friendly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32253
diff changeset
601 couldn't find merge tool true (for pattern f)
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
602 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
603 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
604 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
605 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
606 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
607 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
608 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
609 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
610 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
611 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
612 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
613 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
614 U f
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
615
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
616 ui.merge overrules priority
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
617
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
618 ui.merge specifies false:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
619
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
620 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
621 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
622 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
623 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
624 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
625 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
626 $ hg merge -r 2 --config ui.merge=false
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
627 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
628 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
629 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
630 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
631 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
632 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
633 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
634 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
635 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
636 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
637 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
638 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
639 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
640 U f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
641
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
642 ui.merge specifies internal:fail:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
643
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
644 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
645 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
646 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
647 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
648 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
649 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
650 $ hg merge -r 2 --config ui.merge=internal:fail
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
651 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
652 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
653 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
654 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
655 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
656 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
657 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
658 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
659 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
660 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
661 U f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
662
22706
ad25986c4cd3 filemerge: introduce :x as short version of internal:x merge tool name
Mads Kiilerich <madski@unity3d.com>
parents: 22032
diff changeset
663 ui.merge specifies :local (without internal prefix):
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
664
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
665 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
666 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
667 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
668 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
669 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
670 # hg update -C 1
22706
ad25986c4cd3 filemerge: introduce :x as short version of internal:x merge tool name
Mads Kiilerich <madski@unity3d.com>
parents: 22032
diff changeset
671 $ hg merge -r 2 --config ui.merge=:local
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
672 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
673 (branch merge, don't forget to commit)
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
674 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
675 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
676 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
677 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
678 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
679 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
680 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
681 R f
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
682
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
683 ui.merge specifies internal:other:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
684
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
685 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
686 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
687 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
688 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
689 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
690 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
691 $ hg merge -r 2 --config ui.merge=internal:other
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
692 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
693 (branch merge, don't forget to commit)
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
694 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
695 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
696 revision 2
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
697 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
698 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
699 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
700 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
701 R f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
702
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
703 ui.merge specifies internal:prompt:
7846
1cb6836946be test-merge-tools: test ui.merge functionality and selection of internal tools
Mads Kiilerich <mads@kiilerich.com>
parents: 7785
diff changeset
704
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
705 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
706 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
707 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
708 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
709 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
710 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
711 $ hg merge -r 2 --config ui.merge=internal:prompt
32253
7d4ce4b567c5 filemerge: show warning about choice of :prompt only at an actual fallback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30538
diff changeset
712 keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u
27164
88d5db4b155c filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 27162
diff changeset
713 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
714 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
27164
88d5db4b155c filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 27162
diff changeset
715 [1]
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
716 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
717 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
718 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
719 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
720 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
721 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
722 # hg resolve --list
27164
88d5db4b155c filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 27162
diff changeset
723 U f
7846
1cb6836946be test-merge-tools: test ui.merge functionality and selection of internal tools
Mads Kiilerich <mads@kiilerich.com>
parents: 7785
diff changeset
724
27162
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
725 ui.merge specifies :prompt, with 'leave unresolved' chosen
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
726
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
727 $ beforemerge
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
728 [merge-tools]
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
729 false.whatever=
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
730 true.priority=1
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
731 true.executable=cat
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
732 # hg update -C 1
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
733 $ hg merge -r 2 --config ui.merge=:prompt --config ui.interactive=True << EOF
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
734 > u
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
735 > EOF
32253
7d4ce4b567c5 filemerge: show warning about choice of :prompt only at an actual fallback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30538
diff changeset
736 keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u
27162
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
737 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
738 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
27162
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
739 [1]
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
740 $ aftermerge
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
741 # cat f
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
742 revision 1
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
743 space
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
744 # hg stat
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
745 M f
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
746 # hg resolve --list
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
747 U f
4ab69be0ea15 filemerge: add a 'leave unresolved' option to regular prompts
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
748
26898
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
749 prompt with EOF
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
750
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
751 $ beforemerge
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
752 [merge-tools]
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
753 false.whatever=
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
754 true.priority=1
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
755 true.executable=cat
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
756 # hg update -C 1
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
757 $ hg merge -r 2 --config ui.merge=internal:prompt --config ui.interactive=true
32253
7d4ce4b567c5 filemerge: show warning about choice of :prompt only at an actual fallback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30538
diff changeset
758 keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f?
26898
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
759 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
760 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
26898
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
761 [1]
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
762 $ aftermerge
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
763 # cat f
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
764 revision 1
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
765 space
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
766 # hg stat
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
767 M f
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
768 # hg resolve --list
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
769 U f
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
770 $ hg resolve --all --config ui.merge=internal:prompt --config ui.interactive=true
32253
7d4ce4b567c5 filemerge: show warning about choice of :prompt only at an actual fallback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30538
diff changeset
771 keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f?
26898
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
772 [1]
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
773 $ aftermerge
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
774 # cat f
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
775 revision 1
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
776 space
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
777 # hg stat
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
778 M f
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
779 ? f.orig
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
780 # hg resolve --list
33eb8a56d0c9 filemerge: treat EOF at prompt as fail, not abort
Siddharth Agarwal <sid0@fb.com>
parents: 26897
diff changeset
781 U f
26899
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
782 $ rm f
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
783 $ hg resolve --all --config ui.merge=internal:prompt --config ui.interactive=true
32253
7d4ce4b567c5 filemerge: show warning about choice of :prompt only at an actual fallback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30538
diff changeset
784 keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f?
26899
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
785 [1]
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
786 $ aftermerge
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
787 # cat f
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
788 revision 1
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
789 space
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
790 # hg stat
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
791 M f
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
792 # hg resolve --list
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
793 U f
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
794 $ hg resolve --all --config ui.merge=internal:prompt
32253
7d4ce4b567c5 filemerge: show warning about choice of :prompt only at an actual fallback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30538
diff changeset
795 keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u
27164
88d5db4b155c filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 27162
diff changeset
796 [1]
26899
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
797 $ aftermerge
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
798 # cat f
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
799 revision 1
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
800 space
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
801 # hg stat
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
802 M f
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
803 ? f.orig
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
804 # hg resolve --list
27164
88d5db4b155c filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 27162
diff changeset
805 U f
26899
5f88e092f82c resolve: don't abort when file is missing
Siddharth Agarwal <sid0@fb.com>
parents: 26898
diff changeset
806
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
807 ui.merge specifies internal:dump:
7846
1cb6836946be test-merge-tools: test ui.merge functionality and selection of internal tools
Mads Kiilerich <mads@kiilerich.com>
parents: 7785
diff changeset
808
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
809 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
810 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
811 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
812 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
813 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
814 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
815 $ hg merge -r 2 --config ui.merge=internal:dump
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
816 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
817 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
818 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
819 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
820 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
821 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
822 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
823 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
824 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
825 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
826 ? f.base
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
827 ? f.local
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
828 ? f.orig
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
829 ? f.other
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
830 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
831 U f
7846
1cb6836946be test-merge-tools: test ui.merge functionality and selection of internal tools
Mads Kiilerich <mads@kiilerich.com>
parents: 7785
diff changeset
832
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
833 f.base:
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
834
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
835 $ cat f.base
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
836 revision 0
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
837 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
838
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
839 f.local:
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
840
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
841 $ cat f.local
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
842 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
843 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
844
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
845 f.other:
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
846
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
847 $ cat f.other
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
848 revision 2
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
849 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
850 $ rm f.base f.local f.other
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
851
32255
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
852 check that internal:dump doesn't dump files if premerge runs
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
853 successfully
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
854
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
855 $ beforemerge
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
856 [merge-tools]
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
857 false.whatever=
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
858 true.priority=1
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
859 true.executable=cat
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
860 # hg update -C 1
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
861 $ hg merge -r 3 --config ui.merge=internal:dump
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
862 merging f
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
863 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
864 (branch merge, don't forget to commit)
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
865
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
866 $ aftermerge
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
867 # cat f
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
868 revision 1
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
869 space
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
870 revision 3
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
871 # hg stat
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
872 M f
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
873 # hg resolve --list
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
874 R f
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
875
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
876 check that internal:forcedump dumps files, even if local and other can
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
877 be merged easily
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
878
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
879 $ beforemerge
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
880 [merge-tools]
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
881 false.whatever=
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
882 true.priority=1
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
883 true.executable=cat
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
884 # hg update -C 1
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
885 $ hg merge -r 3 --config ui.merge=internal:forcedump
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
886 merging f
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
887 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
888 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
32255
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
889 [1]
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
890 $ aftermerge
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
891 # cat f
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
892 revision 1
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
893 space
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
894 # hg stat
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
895 M f
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
896 ? f.base
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
897 ? f.local
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
898 ? f.orig
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
899 ? f.other
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
900 # hg resolve --list
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
901 U f
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
902
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
903 $ cat f.base
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
904 revision 0
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
905 space
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
906
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
907 $ cat f.local
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
908 revision 1
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
909 space
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
910
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
911 $ cat f.other
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
912 revision 0
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
913 space
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
914 revision 3
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
915
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
916 $ rm -f f.base f.local f.other
7e35d31b41fd filemerge: add internal merge tool to dump files forcibly
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32254
diff changeset
917
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
918 ui.merge specifies internal:other but is overruled by pattern for false:
8901
94319ae527cf test merge-tools internal:dump and internal:prompt
Mads Kiilerich <mads@kiilerich.com>
parents: 8674
diff changeset
919
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
920 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
921 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
922 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
923 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
924 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
925 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
926 $ hg merge -r 2 --config ui.merge=internal:other --config merge-patterns.f=false
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
927 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
928 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
929 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
930 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
931 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
932 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
933 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
934 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
935 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
936 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
937 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
938 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
939 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
940 U f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
941
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
942 Premerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
943
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
944 ui.merge specifies internal:other but is overruled by --tool=false
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
945
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
946 $ beforemerge
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
947 [merge-tools]
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
948 false.whatever=
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
949 true.priority=1
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
950 true.executable=cat
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
951 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
952 $ hg merge -r 2 --config ui.merge=internal:other --tool=false
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
953 merging f
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
954 merging f failed!
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
955 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
956 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
957 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
958 $ aftermerge
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
959 # cat f
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
960 revision 1
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
961 space
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
962 # hg stat
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
963 M f
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
964 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
965 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
966 U f
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
967
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
968 HGMERGE specifies internal:other but is overruled by --tool=false
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
969
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
970 $ HGMERGE=internal:other ; export HGMERGE
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
971 $ beforemerge
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
972 [merge-tools]
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
973 false.whatever=
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
974 true.priority=1
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
975 true.executable=cat
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
976 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
977 $ hg merge -r 2 --tool=false
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
978 merging f
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
979 merging f failed!
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
980 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
981 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
982 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
983 $ aftermerge
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
984 # cat f
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
985 revision 1
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
986 space
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
987 # hg stat
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
988 M f
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
989 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
990 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
991 U f
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
992
12788
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
993 $ unset HGMERGE # make sure HGMERGE doesn't interfere with remaining tests
de793925862e merge: implement --tool arguments using new ui.forcemerge configurable
Steve Borho <steve@borho.org>
parents: 12460
diff changeset
994
21552
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
995 update is a merge ...
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
996
25753
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
997 (this also tests that files reverted with '--rev REV' are treated as
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
998 "modified", even if none of mode, size and timestamp of them isn't
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
999 changed on the filesystem (see also issue4583))
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1000
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1001 $ cat >> $HGRCPATH <<EOF
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1002 > [fakedirstatewritetime]
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1003 > # emulate invoking dirstate.write() via repo.status()
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1004 > # at 2000-01-01 00:00
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1005 > fakenow = 200001010000
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1006 > EOF
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1007
21552
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1008 $ beforemerge
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1009 [merge-tools]
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1010 false.whatever=
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1011 true.priority=1
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1012 true.executable=cat
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1013 # hg update -C 1
24121
9d0b6ef92eb2 test-merge-tools: fix flaky test by avoiding debugsetparents
Martin von Zweigbergk <martinvonz@google.com>
parents: 22707
diff changeset
1014 $ hg update -q 0
24843
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1015 $ f -s f
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1016 f: size=17
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1017 $ touch -t 200001010000 f
25753
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1018 $ hg debugrebuildstate
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1019 $ cat >> $HGRCPATH <<EOF
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1020 > [extensions]
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1021 > fakedirstatewritetime = $TESTDIR/fakedirstatewritetime.py
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1022 > EOF
24121
9d0b6ef92eb2 test-merge-tools: fix flaky test by avoiding debugsetparents
Martin von Zweigbergk <martinvonz@google.com>
parents: 22707
diff changeset
1023 $ hg revert -q -r 1 .
25753
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1024 $ cat >> $HGRCPATH <<EOF
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1025 > [extensions]
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1026 > fakedirstatewritetime = !
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1027 > EOF
24843
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1028 $ f -s f
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1029 f: size=17
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1030 $ touch -t 200001010000 f
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1031 $ hg status f
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1032 M f
21552
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1033 $ hg update -r 2
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1034 merging f
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1035 revision 1
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1036 space
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1037 revision 0
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1038 space
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1039 revision 2
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1040 space
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1041 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1042 $ aftermerge
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1043 # cat f
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1044 revision 1
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1045 space
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1046 # hg stat
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1047 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1048 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1049 R f
21552
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1050
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1051 update should also have --tool
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1052
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1053 $ beforemerge
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1054 [merge-tools]
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1055 false.whatever=
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1056 true.priority=1
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1057 true.executable=cat
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1058 # hg update -C 1
24121
9d0b6ef92eb2 test-merge-tools: fix flaky test by avoiding debugsetparents
Martin von Zweigbergk <martinvonz@google.com>
parents: 22707
diff changeset
1059 $ hg update -q 0
24843
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1060 $ f -s f
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1061 f: size=17
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1062 $ touch -t 200001010000 f
25753
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1063 $ hg debugrebuildstate
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1064 $ cat >> $HGRCPATH <<EOF
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1065 > [extensions]
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1066 > fakedirstatewritetime = $TESTDIR/fakedirstatewritetime.py
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1067 > EOF
24121
9d0b6ef92eb2 test-merge-tools: fix flaky test by avoiding debugsetparents
Martin von Zweigbergk <martinvonz@google.com>
parents: 22707
diff changeset
1068 $ hg revert -q -r 1 .
25753
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1069 $ cat >> $HGRCPATH <<EOF
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1070 > [extensions]
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1071 > fakedirstatewritetime = !
fe03f522dda9 context: write dirstate out explicitly after marking files as clean
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24843
diff changeset
1072 > EOF
24843
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1073 $ f -s f
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1074 f: size=17
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1075 $ touch -t 200001010000 f
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1076 $ hg status f
21b33f0460e0 revert: apply normallookup on reverted file if size isn't changed (issue4583)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 24809
diff changeset
1077 M f
21552
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1078 $ hg update -r 2 --tool false
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1079 merging f
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1080 merging f failed!
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1081 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1082 use 'hg resolve' to retry unresolved file merges
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1083 [1]
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1084 $ aftermerge
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1085 # cat f
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1086 revision 1
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1087 space
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1088 # hg stat
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1089 M f
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1090 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1091 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1092 U f
21552
61151f429a5f update: introduce --tool for controlling the merge tool
Mads Kiilerich <madski@unity3d.com>
parents: 21519
diff changeset
1093
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1094 Default is silent simplemerge:
8901
94319ae527cf test merge-tools internal:dump and internal:prompt
Mads Kiilerich <mads@kiilerich.com>
parents: 8674
diff changeset
1095
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1096 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1097 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1098 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1099 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1100 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1101 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1102 $ hg merge -r 3
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1103 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1104 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1105 (branch merge, don't forget to commit)
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1106 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1107 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1108 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1109 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1110 revision 3
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1111 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1112 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1113 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1114 R f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1115
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1116 .premerge=True is same:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
1117
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1118 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1119 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1120 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1121 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1122 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1123 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1124 $ hg merge -r 3 --config merge-tools.true.premerge=True
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1125 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1126 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1127 (branch merge, don't forget to commit)
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1128 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1129 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1130 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1131 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1132 revision 3
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1133 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1134 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1135 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1136 R f
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
1137
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1138 .premerge=False executes merge-tool:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
1139
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1140 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1141 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1142 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1143 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1144 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1145 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1146 $ hg merge -r 3 --config merge-tools.true.premerge=False
13439
d724a69309e0 util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
1147 merging f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1148 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1149 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1150 revision 0
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1151 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1152 revision 0
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1153 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1154 revision 3
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1155 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1156 (branch merge, don't forget to commit)
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1157 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1158 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1159 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1160 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1161 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1162 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1163 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1164 R f
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
1165
22030
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1166 premerge=keep keeps conflict markers in:
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1167
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1168 $ beforemerge
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1169 [merge-tools]
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1170 false.whatever=
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1171 true.priority=1
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1172 true.executable=cat
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1173 # hg update -C 1
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1174 $ hg merge -r 4 --config merge-tools.true.premerge=keep
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1175 merging f
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30062
diff changeset
1176 <<<<<<< working copy: ef83787e2614 - test: revision 1
22030
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1177 revision 1
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1178 space
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1179 =======
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1180 revision 4
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 27164
diff changeset
1181 >>>>>>> merge rev: 81448d39c9a0 - test: revision 4
22030
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1182 revision 0
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1183 space
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1184 revision 4
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1185 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1186 (branch merge, don't forget to commit)
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1187 $ aftermerge
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1188 # cat f
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30062
diff changeset
1189 <<<<<<< working copy: ef83787e2614 - test: revision 1
22030
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1190 revision 1
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1191 space
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1192 =======
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1193 revision 4
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 27164
diff changeset
1194 >>>>>>> merge rev: 81448d39c9a0 - test: revision 4
22030
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1195 # hg stat
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1196 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1197 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1198 R f
22030
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1199
22032
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1200 premerge=keep-merge3 keeps conflict markers with base content:
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1201
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1202 $ beforemerge
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1203 [merge-tools]
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1204 false.whatever=
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1205 true.priority=1
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1206 true.executable=cat
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1207 # hg update -C 1
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1208 $ hg merge -r 4 --config merge-tools.true.premerge=keep-merge3
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1209 merging f
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30062
diff changeset
1210 <<<<<<< working copy: ef83787e2614 - test: revision 1
22032
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1211 revision 1
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1212 space
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1213 ||||||| base
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1214 revision 0
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1215 space
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1216 =======
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1217 revision 4
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 27164
diff changeset
1218 >>>>>>> merge rev: 81448d39c9a0 - test: revision 4
22032
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1219 revision 0
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1220 space
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1221 revision 4
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1222 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1223 (branch merge, don't forget to commit)
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1224 $ aftermerge
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1225 # cat f
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30062
diff changeset
1226 <<<<<<< working copy: ef83787e2614 - test: revision 1
22032
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1227 revision 1
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1228 space
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1229 ||||||| base
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1230 revision 0
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1231 space
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1232 =======
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1233 revision 4
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 27164
diff changeset
1234 >>>>>>> merge rev: 81448d39c9a0 - test: revision 4
22032
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1235 # hg stat
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1236 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1237 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1238 R f
22032
d7f25834ffbb merge-tools: add a `premerge=keep-merge3` config option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22030
diff changeset
1239
35907
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1240 premerge=keep respects ui.mergemarkers=basic:
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1241
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1242 $ beforemerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1243 [merge-tools]
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1244 false.whatever=
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1245 true.priority=1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1246 true.executable=cat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1247 # hg update -C 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1248 $ hg merge -r 4 --config merge-tools.true.premerge=keep --config ui.mergemarkers=basic
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1249 merging f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1250 <<<<<<< working copy
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1251 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1252 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1253 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1254 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1255 >>>>>>> merge rev
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1256 revision 0
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1257 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1258 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1259 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1260 (branch merge, don't forget to commit)
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1261 $ aftermerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1262 # cat f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1263 <<<<<<< working copy
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1264 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1265 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1266 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1267 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1268 >>>>>>> merge rev
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1269 # hg stat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1270 M f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1271 # hg resolve --list
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1272 R f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1273
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1274 premerge=keep ignores ui.mergemarkers=basic if true.mergemarkers=detailed:
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1275
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1276 $ beforemerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1277 [merge-tools]
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1278 false.whatever=
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1279 true.priority=1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1280 true.executable=cat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1281 # hg update -C 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1282 $ hg merge -r 4 --config merge-tools.true.premerge=keep \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1283 > --config ui.mergemarkers=basic \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1284 > --config merge-tools.true.mergemarkers=detailed
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1285 merging f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1286 <<<<<<< working copy: ef83787e2614 - test: revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1287 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1288 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1289 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1290 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1291 >>>>>>> merge rev: 81448d39c9a0 - test: revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1292 revision 0
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1293 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1294 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1295 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1296 (branch merge, don't forget to commit)
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1297 $ aftermerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1298 # cat f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1299 <<<<<<< working copy: ef83787e2614 - test: revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1300 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1301 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1302 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1303 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1304 >>>>>>> merge rev: 81448d39c9a0 - test: revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1305 # hg stat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1306 M f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1307 # hg resolve --list
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1308 R f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1309
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1310 premerge=keep respects ui.mergemarkertemplate instead of
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1311 true.mergemarkertemplate if true.mergemarkers=basic:
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1312
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1313 $ beforemerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1314 [merge-tools]
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1315 false.whatever=
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1316 true.priority=1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1317 true.executable=cat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1318 # hg update -C 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1319 $ hg merge -r 4 --config merge-tools.true.premerge=keep \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1320 > --config ui.mergemarkertemplate='uitmpl {rev}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1321 > --config merge-tools.true.mergemarkertemplate='tooltmpl {short(node)}'
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1322 merging f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1323 <<<<<<< working copy: uitmpl 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1324 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1325 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1326 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1327 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1328 >>>>>>> merge rev: uitmpl 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1329 revision 0
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1330 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1331 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1332 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1333 (branch merge, don't forget to commit)
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1334 $ aftermerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1335 # cat f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1336 <<<<<<< working copy: uitmpl 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1337 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1338 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1339 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1340 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1341 >>>>>>> merge rev: uitmpl 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1342 # hg stat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1343 M f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1344 # hg resolve --list
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1345 R f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1346
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1347 premerge=keep respects true.mergemarkertemplate instead of
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1348 true.mergemarkertemplate if true.mergemarkers=detailed:
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1349
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1350 $ beforemerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1351 [merge-tools]
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1352 false.whatever=
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1353 true.priority=1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1354 true.executable=cat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1355 # hg update -C 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1356 $ hg merge -r 4 --config merge-tools.true.premerge=keep \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1357 > --config ui.mergemarkertemplate='uitmpl {rev}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1358 > --config merge-tools.true.mergemarkertemplate='tooltmpl {short(node)}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1359 > --config merge-tools.true.mergemarkers=detailed
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1360 merging f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1361 <<<<<<< working copy: tooltmpl ef83787e2614
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1362 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1363 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1364 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1365 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1366 >>>>>>> merge rev: tooltmpl 81448d39c9a0
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1367 revision 0
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1368 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1369 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1370 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1371 (branch merge, don't forget to commit)
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1372 $ aftermerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1373 # cat f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1374 <<<<<<< working copy: tooltmpl ef83787e2614
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1375 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1376 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1377 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1378 revision 4
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1379 >>>>>>> merge rev: tooltmpl 81448d39c9a0
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1380 # hg stat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1381 M f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1382 # hg resolve --list
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1383 R f
22030
ecdff28d13e2 mergetools: add a test for premerge --keep
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22029
diff changeset
1384
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1385 Tool execution
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
1386
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1387 set tools.args explicit to include $base $local $other $output:
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1388
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1389 $ beforemerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1390 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1391 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1392 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1393 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1394 # hg update -C 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1395 $ hg merge -r 2 --config merge-tools.true.executable=head --config merge-tools.true.args='$base $local $other $output' \
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1396 > | sed 's,==> .* <==,==> ... <==,g'
13439
d724a69309e0 util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
1397 merging f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1398 ==> ... <==
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1399 revision 0
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1400 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1401
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1402 ==> ... <==
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1403 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1404 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1405
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1406 ==> ... <==
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1407 revision 2
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1408 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1409
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1410 ==> ... <==
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1411 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1412 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1413 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1414 (branch merge, don't forget to commit)
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1415 $ aftermerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1416 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1417 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1418 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1419 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1420 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1421 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1422 R f
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1423
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1424 Merge with "echo mergeresult > $local":
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1425
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1426 $ beforemerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1427 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1428 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1429 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1430 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1431 # hg update -C 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1432 $ hg merge -r 2 --config merge-tools.true.executable=echo --config merge-tools.true.args='mergeresult > $local'
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1433 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1434 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1435 (branch merge, don't forget to commit)
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1436 $ aftermerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1437 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1438 mergeresult
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1439 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1440 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1441 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1442 R f
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1443
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1444 - and $local is the file f:
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1445
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1446 $ beforemerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1447 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1448 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1449 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1450 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1451 # hg update -C 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1452 $ hg merge -r 2 --config merge-tools.true.executable=echo --config merge-tools.true.args='mergeresult > f'
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1453 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1454 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1455 (branch merge, don't forget to commit)
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1456 $ aftermerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1457 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1458 mergeresult
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1459 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1460 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1461 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1462 R f
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1463
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1464 Merge with "echo mergeresult > $output" - the variable is a bit magic:
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13439
diff changeset
1465
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1466 $ beforemerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1467 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1468 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1469 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1470 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1471 # hg update -C 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1472 $ hg merge -r 2 --config merge-tools.true.executable=echo --config merge-tools.true.args='mergeresult > $output'
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1473 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1474 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1475 (branch merge, don't forget to commit)
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1476 $ aftermerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1477 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1478 mergeresult
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1479 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1480 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1481 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1482 R f
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
1483
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1484 Merge using tool with a path that must be quoted:
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1485
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1486 $ beforemerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1487 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1488 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1489 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1490 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1491 # hg update -C 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1492 $ cat <<EOF > 'my merge tool'
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1493 > cat "\$1" "\$2" "\$3" > "\$4"
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1494 > EOF
16967
30cfa286947c test-merge-tools: adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16961
diff changeset
1495 $ hg --config merge-tools.true.executable='sh' \
30cfa286947c test-merge-tools: adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16961
diff changeset
1496 > --config merge-tools.true.args='"./my merge tool" $base $local $other $output' \
30cfa286947c test-merge-tools: adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents: 16961
diff changeset
1497 > merge -r 2
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1498 merging f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1499 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1500 (branch merge, don't forget to commit)
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1501 $ rm -f 'my merge tool'
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1502 $ aftermerge
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1503 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1504 revision 0
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1505 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1506 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1507 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1508 revision 2
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1509 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1510 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1511 M f
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1512 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1513 R f
10775
c52057614c72 Tests with spaces in paths
Mads Kiilerich <mads@kiilerich.com>
parents: 10282
diff changeset
1514
35907
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1515 Merge using a tool that supports labellocal, labelother, and labelbase, checking
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1516 that they're quoted properly as well. This is using the default 'basic'
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1517 mergemarkers even though ui.mergemarkers is 'detailed', so it's ignoring both
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1518 mergemarkertemplate settings:
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1519
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1520 $ beforemerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1521 [merge-tools]
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1522 false.whatever=
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1523 true.priority=1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1524 true.executable=cat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1525 # hg update -C 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1526 $ cat <<EOF > printargs_merge_tool
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1527 > while test \$# -gt 0; do echo arg: \"\$1\"; shift; done
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1528 > EOF
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1529 $ hg --config merge-tools.true.executable='sh' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1530 > --config merge-tools.true.args='./printargs_merge_tool ll:$labellocal lo: $labelother lb:$labelbase": "$base' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1531 > --config merge-tools.true.mergemarkertemplate='tooltmpl {short(node)}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1532 > --config ui.mergemarkertemplate='uitmpl {rev}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1533 > --config ui.mergemarkers=detailed \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1534 > merge -r 2
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1535 merging f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1536 arg: "ll:working copy"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1537 arg: "lo:"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1538 arg: "merge rev"
36054
fe5c4b795999 test-merge-tools: stabilize for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 35992
diff changeset
1539 arg: "lb:base: */f~base.*" (glob)
35907
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1540 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1541 (branch merge, don't forget to commit)
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1542 $ rm -f 'printargs_merge_tool'
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1543
36999
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1544 Same test with experimental.mergetempdirprefix set:
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1545
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1546 $ beforemerge
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1547 [merge-tools]
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1548 false.whatever=
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1549 true.priority=1
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1550 true.executable=cat
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1551 # hg update -C 1
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1552 $ cat <<EOF > printargs_merge_tool
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1553 > while test \$# -gt 0; do echo arg: \"\$1\"; shift; done
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1554 > EOF
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1555 $ hg --config experimental.mergetempdirprefix=$TESTTMP/hgmerge. \
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1556 > --config merge-tools.true.executable='sh' \
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1557 > --config merge-tools.true.args='./printargs_merge_tool ll:$labellocal lo: $labelother lb:$labelbase": "$base' \
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1558 > --config merge-tools.true.mergemarkertemplate='tooltmpl {short(node)}' \
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1559 > --config ui.mergemarkertemplate='uitmpl {rev}' \
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1560 > --config ui.mergemarkers=detailed \
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1561 > merge -r 2
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1562 merging f
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1563 arg: "ll:working copy"
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1564 arg: "lo:"
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1565 arg: "merge rev"
37023
6bc2f1b3bc9d test-merge-tools: stabilize for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 36999
diff changeset
1566 arg: "lb:base: */hgmerge.*/f~base" (glob)
36999
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1567 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1568 (branch merge, don't forget to commit)
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1569 $ rm -f 'printargs_merge_tool'
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1570
35907
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1571 Merge using a tool that supports labellocal, labelother, and labelbase, checking
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1572 that they're quoted properly as well. This is using 'detailed' mergemarkers,
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1573 even though ui.mergemarkers is 'basic', and using the tool's
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1574 mergemarkertemplate:
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1575
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1576 $ beforemerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1577 [merge-tools]
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1578 false.whatever=
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1579 true.priority=1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1580 true.executable=cat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1581 # hg update -C 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1582 $ cat <<EOF > printargs_merge_tool
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1583 > while test \$# -gt 0; do echo arg: \"\$1\"; shift; done
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1584 > EOF
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1585 $ hg --config merge-tools.true.executable='sh' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1586 > --config merge-tools.true.args='./printargs_merge_tool ll:$labellocal lo: $labelother lb:$labelbase": "$base' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1587 > --config merge-tools.true.mergemarkers=detailed \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1588 > --config merge-tools.true.mergemarkertemplate='tooltmpl {short(node)}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1589 > --config ui.mergemarkertemplate='uitmpl {rev}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1590 > --config ui.mergemarkers=basic \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1591 > merge -r 2
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1592 merging f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1593 arg: "ll:working copy: tooltmpl ef83787e2614"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1594 arg: "lo:"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1595 arg: "merge rev: tooltmpl 0185f4e0cf02"
36054
fe5c4b795999 test-merge-tools: stabilize for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 35992
diff changeset
1596 arg: "lb:base: */f~base.*" (glob)
35907
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1597 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1598 (branch merge, don't forget to commit)
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1599 $ rm -f 'printargs_merge_tool'
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1600
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1601 The merge tool still gets labellocal and labelother as 'basic' even when
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1602 premerge=keep is used and has 'detailed' markers:
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1603
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1604 $ beforemerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1605 [merge-tools]
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1606 false.whatever=
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1607 true.priority=1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1608 true.executable=cat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1609 # hg update -C 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1610 $ cat <<EOF > mytool
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1611 > echo labellocal: \"\$1\"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1612 > echo labelother: \"\$2\"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1613 > echo "output (arg)": \"\$3\"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1614 > echo "output (contents)":
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1615 > cat "\$3"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1616 > EOF
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1617 $ hg --config merge-tools.true.executable='sh' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1618 > --config merge-tools.true.args='mytool $labellocal $labelother $output' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1619 > --config merge-tools.true.premerge=keep \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1620 > --config merge-tools.true.mergemarkertemplate='tooltmpl {short(node)}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1621 > --config ui.mergemarkertemplate='uitmpl {rev}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1622 > --config ui.mergemarkers=detailed \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1623 > merge -r 2
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1624 merging f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1625 labellocal: "working copy"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1626 labelother: "merge rev"
38029
a4a5c3085ea9 test-merge-tools: create repo directory to free $TESTTMP for temporary files
Yuya Nishihara <yuya@tcha.org>
parents: 37077
diff changeset
1627 output (arg): "$TESTTMP/repo/f"
35907
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1628 output (contents):
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1629 <<<<<<< working copy: uitmpl 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1630 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1631 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1632 revision 2
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1633 >>>>>>> merge rev: uitmpl 2
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1634 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1635 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1636 (branch merge, don't forget to commit)
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1637 $ rm -f 'mytool'
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1638
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1639 premerge=keep uses the *tool's* mergemarkertemplate if tool's
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1640 mergemarkers=detailed; labellocal and labelother also use the tool's template
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1641
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1642 $ beforemerge
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1643 [merge-tools]
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1644 false.whatever=
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1645 true.priority=1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1646 true.executable=cat
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1647 # hg update -C 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1648 $ cat <<EOF > mytool
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1649 > echo labellocal: \"\$1\"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1650 > echo labelother: \"\$2\"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1651 > echo "output (arg)": \"\$3\"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1652 > echo "output (contents)":
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1653 > cat "\$3"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1654 > EOF
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1655 $ hg --config merge-tools.true.executable='sh' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1656 > --config merge-tools.true.args='mytool $labellocal $labelother $output' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1657 > --config merge-tools.true.premerge=keep \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1658 > --config merge-tools.true.mergemarkers=detailed \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1659 > --config merge-tools.true.mergemarkertemplate='tooltmpl {short(node)}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1660 > --config ui.mergemarkertemplate='uitmpl {rev}' \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1661 > --config ui.mergemarkers=detailed \
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1662 > merge -r 2
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1663 merging f
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1664 labellocal: "working copy: tooltmpl ef83787e2614"
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1665 labelother: "merge rev: tooltmpl 0185f4e0cf02"
38029
a4a5c3085ea9 test-merge-tools: create repo directory to free $TESTTMP for temporary files
Yuya Nishihara <yuya@tcha.org>
parents: 37077
diff changeset
1666 output (arg): "$TESTTMP/repo/f"
35907
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1667 output (contents):
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1668 <<<<<<< working copy: tooltmpl ef83787e2614
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1669 revision 1
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1670 =======
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1671 revision 2
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1672 >>>>>>> merge rev: tooltmpl 0185f4e0cf02
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1673 space
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1674 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1675 (branch merge, don't forget to commit)
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1676 $ rm -f 'mytool'
9037c29e9f53 filemerge: support passing labels to external merge tools
Kyle Lippincott <spectral@google.com>
parents: 35704
diff changeset
1677
17885
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1678 Issue3581: Merging a filename that needs to be quoted
17902
195ad823b5d5 tests: fix test for issue3581 for vfat on Linux
Matt Mackall <mpm@selenic.com>
parents: 17901
diff changeset
1679 (This test doesn't work on Windows filesystems even on Linux, so check
195ad823b5d5 tests: fix test for issue3581 for vfat on Linux
Matt Mackall <mpm@selenic.com>
parents: 17901
diff changeset
1680 for Unix-like permission)
17885
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1681
17902
195ad823b5d5 tests: fix test for issue3581 for vfat on Linux
Matt Mackall <mpm@selenic.com>
parents: 17901
diff changeset
1682 #if unix-permissions
17885
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1683 $ beforemerge
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1684 [merge-tools]
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1685 false.whatever=
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1686 true.priority=1
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1687 true.executable=cat
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1688 # hg update -C 1
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1689 $ echo "revision 5" > '"; exit 1; echo "'
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1690 $ hg commit -Am "revision 5"
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1691 adding "; exit 1; echo "
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1692 warning: filename contains '"', which is reserved on Windows: '"; exit 1; echo "'
22029
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
1693 $ hg update -C 1 > /dev/null
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
1694 $ echo "revision 6" > '"; exit 1; echo "'
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
1695 $ hg commit -Am "revision 6"
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
1696 adding "; exit 1; echo "
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
1697 warning: filename contains '"', which is reserved on Windows: '"; exit 1; echo "'
17885
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1698 created new head
22029
f28329171a86 test-merge-tools: introduce a "revision 4" that merges with conflict
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
1699 $ hg merge --config merge-tools.true.executable="true" -r 5
17885
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1700 merging "; exit 1; echo "
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1701 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1702 (branch merge, don't forget to commit)
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1703 $ hg update -C 1 > /dev/null
39183
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1704
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1705 #else
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1706
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1707 Match the non-portable filename commits above for test stability
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1708
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1709 $ hg import --bypass -q - << EOF
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1710 > # HG changeset patch
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1711 > revision 5
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1712 >
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1713 > diff --git a/"; exit 1; echo " b/"; exit 1; echo "
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1714 > new file mode 100644
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1715 > --- /dev/null
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1716 > +++ b/"; exit 1; echo "
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1717 > @@ -0,0 +1,1 @@
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1718 > +revision 5
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1719 > EOF
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1720
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1721 $ hg import --bypass -q - << EOF
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1722 > # HG changeset patch
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1723 > revision 6
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1724 >
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1725 > diff --git a/"; exit 1; echo " b/"; exit 1; echo "
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1726 > new file mode 100644
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1727 > --- /dev/null
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1728 > +++ b/"; exit 1; echo "
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1729 > @@ -0,0 +1,1 @@
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1730 > +revision 6
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1731 > EOF
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1732
17901
a19046744e4e filemerge: only run test for issue3581 on non-windows environments
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17885
diff changeset
1733 #endif
17885
9a2cf955db84 filemerge: use util.shellquote when calling merge (issue3581)
Keegan Carruthers-Smith <keegancsmith@fb.com>
parents: 17492
diff changeset
1734
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1735 Merge post-processing
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
1736
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1737 cat is a bad merge-tool and doesn't change:
7731
737f274d1915 test-merge-tools
Mads Kiilerich <mads@kiilerich.com>
parents:
diff changeset
1738
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1739 $ beforemerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1740 [merge-tools]
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1741 false.whatever=
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1742 true.priority=1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1743 true.executable=cat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1744 # hg update -C 1
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1745 $ hg merge -y -r 2 --config merge-tools.true.checkchanged=1
13439
d724a69309e0 util: flush stdout before calling external processes
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
1746 merging f
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1747 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1748 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1749 revision 0
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1750 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1751 revision 2
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1752 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1753 output file f appears unchanged
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1754 was merge successful (yn)? n
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1755 merging f failed!
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1756 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
1757 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
16961
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1758 [1]
cdbb53a640c1 test-merge-tools: inline pointless domerge function
Adrian Buehlmann <adrian@cadifra.com>
parents: 15545
diff changeset
1759 $ aftermerge
12460
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1760 # cat f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1761 revision 1
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1762 space
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1763 # hg stat
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1764 M f
09168638b313 tests: unify test-merge-tools
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
1765 ? f.orig
26897
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1766 # hg resolve --list
da1c706c9a35 test-merge-tools.t: add 'hg resolve --list' output to tests
Siddharth Agarwal <sid0@fb.com>
parents: 26730
diff changeset
1767 U f
18256
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1768
38951
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1769 missingbinary is a merge-tool that doesn't exist:
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1770
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1771 $ echo "missingbinary.executable=doesnotexist" >> .hg/hgrc
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1772 $ beforemerge
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1773 [merge-tools]
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1774 false.whatever=
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1775 true.priority=1
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1776 true.executable=cat
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1777 missingbinary.executable=doesnotexist
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1778 # hg update -C 1
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1779 $ hg merge -y -r 2 --config ui.merge=missingbinary
38952
0e58c5b20745 mergetool: warn if ui.merge points to nonexistent tool
Martin von Zweigbergk <martinvonz@google.com>
parents: 38951
diff changeset
1780 couldn't find merge tool missingbinary (for pattern f)
38951
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1781 merging f
38952
0e58c5b20745 mergetool: warn if ui.merge points to nonexistent tool
Martin von Zweigbergk <martinvonz@google.com>
parents: 38951
diff changeset
1782 couldn't find merge tool missingbinary (for pattern f)
38951
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1783 revision 1
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1784 space
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1785 revision 0
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1786 space
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1787 revision 2
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1788 space
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1789 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1790 (branch merge, don't forget to commit)
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1791
39183
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1792 $ hg update -q -C 1
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1793 $ rm f
18256
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1794
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1795 internal merge cannot handle symlinks and shouldn't try:
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1796
39183
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1797 #if symlink
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1798
18256
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1799 $ ln -s symlink f
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1800 $ hg commit -qm 'f is symlink'
39183
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1801
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1802 #else
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1803
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1804 $ hg import --bypass -q - << EOF
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1805 > # HG changeset patch
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1806 > f is symlink
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1807 >
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1808 > diff --git a/f b/f
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1809 > old mode 100644
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1810 > new mode 120000
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1811 > --- a/f
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1812 > +++ b/f
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1813 > @@ -1,2 +1,1 @@
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1814 > -revision 1
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1815 > -space
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1816 > +symlink
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1817 > \ No newline at end of file
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1818 > EOF
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1819
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1820 Resolve 'other [destination] changed f which local [working copy] deleted' prompt
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1821 $ hg up -q -C --config ui.interactive=True << EOF
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1822 > c
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1823 > EOF
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1824
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1825 #endif
7a111168659e tests: stabilize test-merge-tools.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39125
diff changeset
1826
18256
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1827 $ hg merge -r 2 --tool internal:merge
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1828 merging f
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22706
diff changeset
1829 warning: internal :merge cannot merge symlinks for f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
1830 warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
18256
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1831 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32256
diff changeset
1832 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
18256
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1833 [1]
d084df89d948 merge: make internal merge fail cleanly on symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 17902
diff changeset
1834
30538
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1835 Verify naming of temporary files and that extension is preserved:
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1836
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1837 $ hg update -q -C 1
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1838 $ hg mv f f.txt
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1839 $ hg ci -qm "f.txt"
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1840 $ hg update -q -C 2
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1841 $ hg merge -y -r tip --tool echo --config merge-tools.echo.args='$base $local $other $output'
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1842 merging f and f.txt to f.txt
38029
a4a5c3085ea9 test-merge-tools: create repo directory to free $TESTTMP for temporary files
Yuya Nishihara <yuya@tcha.org>
parents: 37077
diff changeset
1843 */f~base.* */f~local.*.txt */f~other.*.txt $TESTTMP/repo/f.txt (glob)
30538
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1844 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
c2154979409d merge: use original file extension for temporary files
Mads Kiilerich <madski@unity3d.com>
parents: 30460
diff changeset
1845 (branch merge, don't forget to commit)
32256
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1846
36999
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1847 Verify naming of temporary files and that extension is preserved
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1848 (experimental.mergetempdirprefix version):
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1849
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1850 $ hg update -q -C 1
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1851 $ hg mv f f.txt
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1852 $ hg ci -qm "f.txt"
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1853 $ hg update -q -C 2
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1854 $ hg merge -y -r tip --tool echo \
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1855 > --config merge-tools.echo.args='$base $local $other $output' \
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1856 > --config experimental.mergetempdirprefix=$TESTTMP/hgmerge.
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1857 merging f and f.txt to f.txt
38029
a4a5c3085ea9 test-merge-tools: create repo directory to free $TESTTMP for temporary files
Yuya Nishihara <yuya@tcha.org>
parents: 37077
diff changeset
1858 $TESTTMP/hgmerge.*/f~base $TESTTMP/hgmerge.*/f~local.txt $TESTTMP/hgmerge.*/f~other.txt $TESTTMP/repo/f.txt (glob)
36999
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1859 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1860 (branch merge, don't forget to commit)
e349ad5cbb71 filemerge: use a single temp dir instead of temp files
Kyle Lippincott <spectral@google.com>
parents: 36992
diff changeset
1861
39124
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1862 Binary files capability checking
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1863
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1864 $ hg update -q -C 0
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1865 $ python <<EOF
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1866 > with open('b', 'wb') as fp:
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1867 > fp.write(b'\x00\x01\x02\x03')
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1868 > EOF
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1869 $ hg add b
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1870 $ hg commit -qm "add binary file (#1)"
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1871
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1872 $ hg update -q -C 0
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1873 $ python <<EOF
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1874 > with open('b', 'wb') as fp:
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1875 > fp.write(b'\x03\x02\x01\x00')
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1876 > EOF
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1877 $ hg add b
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1878 $ hg commit -qm "add binary file (#2)"
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1879
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1880 By default, binary files capability of internal merge tools is not
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1881 checked strictly.
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1882
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1883 (for merge-patterns, chosen unintentionally)
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1884
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1885 $ hg merge 9 \
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1886 > --config merge-patterns.b=:merge-other \
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1887 > --config merge-patterns.re:[a-z]=:other
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1888 warning: check merge-patterns configurations, if ':merge-other' for binary file 'b' is unintentional
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1889 (see 'hg help merge-tools' for binary files capability)
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1890 merging b
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1891 warning: b looks like a binary file.
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1892 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1893 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1894 [1]
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1895 $ hg merge --abort -q
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1896
39125
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1897 (for ui.merge, ignored unintentionally)
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1898
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1899 $ hg merge 9 \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1900 > --config ui.merge=:other
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1901 tool :other (for pattern b) can't handle binary
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1902 tool true can't handle binary
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1903 tool false can't handle binary
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1904 no tool found to merge b
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1905 keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for b? u
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1906 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1907 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1908 [1]
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1909 $ hg merge --abort -q
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1910
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1911 With merge.strict-capability-check=true, binary files capability of
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1912 internal merge tools is checked strictly.
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1913
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1914 $ f --hexdump b
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1915 b:
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1916 0000: 03 02 01 00 |....|
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1917
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1918 (for merge-patterns)
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1919
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1920 $ hg merge 9 --config merge.strict-capability-check=true \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1921 > --config merge-patterns.b=:merge-other \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1922 > --config merge-patterns.re:[a-z]=:other
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1923 tool :merge-other (for pattern b) can't handle binary
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1924 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1925 (branch merge, don't forget to commit)
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1926 $ f --hexdump b
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1927 b:
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1928 0000: 00 01 02 03 |....|
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1929 $ hg merge --abort -q
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1930
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1931 (for ui.merge)
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1932
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1933 $ hg merge 9 --config merge.strict-capability-check=true \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1934 > --config ui.merge=:other
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1935 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1936 (branch merge, don't forget to commit)
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1937 $ f --hexdump b
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1938 b:
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1939 0000: 00 01 02 03 |....|
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1940 $ hg merge --abort -q
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1941
32256
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1942 Check that debugpicktool examines which merge tool is chosen for
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1943 specified file as expected
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1944
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1945 $ beforemerge
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1946 [merge-tools]
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1947 false.whatever=
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1948 true.priority=1
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1949 true.executable=cat
38951
6bfd1054d867 tests: demonstrate that no requested merge tool is ignored if missing
Martin von Zweigbergk <martinvonz@google.com>
parents: 38041
diff changeset
1950 missingbinary.executable=doesnotexist
32256
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1951 # hg update -C 1
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1952
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1953 (default behavior: checking files in the working parent context)
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1954
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1955 $ hg manifest
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1956 f
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1957 $ hg debugpickmergetool
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1958 f = true
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1959
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1960 (-X/-I and file patterns limmit examination targets)
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1961
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1962 $ hg debugpickmergetool -X f
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1963 $ hg debugpickmergetool unknown
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1964 unknown: no such file in rev ef83787e2614
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1965
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1966 (--changedelete emulates merging change and delete)
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1967
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1968 $ hg debugpickmergetool --changedelete
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1969 f = :prompt
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1970
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1971 (-r REV causes checking files in specified revision)
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1972
39124
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1973 $ hg manifest -r 8
32256
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1974 f.txt
39124
6618634e3325 filemerge: show warning if chosen tool has no binary files capability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 38952
diff changeset
1975 $ hg debugpickmergetool -r 8
32256
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1976 f.txt = true
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1977
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1978 #if symlink
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1979
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1980 (symlink causes chosing :prompt)
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1981
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1982 $ hg debugpickmergetool -r 6d00b3726f6e
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1983 f = :prompt
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
1984
39125
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1985 (by default, it is assumed that no internal merge tools has symlinks
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1986 capability)
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1987
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1988 $ hg debugpickmergetool \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1989 > -r 6d00b3726f6e \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1990 > --config merge-patterns.f=:merge-other \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1991 > --config merge-patterns.re:[f]=:merge-local \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1992 > --config merge-patterns.re:[a-z]=:other
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1993 f = :prompt
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1994
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1995 $ hg debugpickmergetool \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1996 > -r 6d00b3726f6e \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1997 > --config ui.merge=:other
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1998 f = :prompt
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
1999
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2000 (with strict-capability-check=true, actual symlink capabilities are
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2001 checked striclty)
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2002
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2003 $ hg debugpickmergetool --config merge.strict-capability-check=true \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2004 > -r 6d00b3726f6e \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2005 > --config merge-patterns.f=:merge-other \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2006 > --config merge-patterns.re:[f]=:merge-local \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2007 > --config merge-patterns.re:[a-z]=:other
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2008 f = :other
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2009
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2010 $ hg debugpickmergetool --config merge.strict-capability-check=true \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2011 > -r 6d00b3726f6e \
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2012 > --config ui.merge=:other
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2013 f = :other
cded904f7acc filemerge: add config knob to check capabilities of internal merge tools
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 39124
diff changeset
2014
32256
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2015 #endif
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2016
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2017 (--verbose shows some configurations)
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2018
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2019 $ hg debugpickmergetool --tool foobar -v
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2020 with --tool 'foobar'
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2021 f = foobar
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2022
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2023 $ HGMERGE=false hg debugpickmergetool -v
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2024 with HGMERGE='false'
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2025 f = false
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2026
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2027 $ hg debugpickmergetool --config ui.merge=false -v
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2028 with ui.merge='false'
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2029 f = false
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2030
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2031 (--debug shows errors detected intermediately)
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2032
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2033 $ hg debugpickmergetool --config merge-patterns.f=true --config merge-tools.true.executable=nonexistentmergetool --debug f
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2034 couldn't find merge tool true (for pattern f)
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2035 couldn't find merge tool true
9bc36198338e debugcommands: add debugpickmergetool to examine which merge tool is chosen
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 32255
diff changeset
2036 f = false
38029
a4a5c3085ea9 test-merge-tools: create repo directory to free $TESTTMP for temporary files
Yuya Nishihara <yuya@tcha.org>
parents: 37077
diff changeset
2037
a4a5c3085ea9 test-merge-tools: create repo directory to free $TESTTMP for temporary files
Yuya Nishihara <yuya@tcha.org>
parents: 37077
diff changeset
2038 $ cd ..