annotate tests/test-merge-tools.t @ 44118:f81c17ec303c

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