annotate tests/test-resolve.t @ 51460:cebd96dee99a

branchcache: move the filename to a class attribute This prepare the introduction of more variant of cache.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Sun, 25 Feb 2024 20:40:37 +0100
parents 38941a28406a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
1 test that a commit clears the merge state.
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
2
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
3 $ hg init repo
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
4 $ cd repo
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
5
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
6 $ echo foo > file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
7 $ echo foo > file2
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
8 $ hg commit -Am 'add files'
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
9 adding file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
10 adding file2
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
11
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
12 $ echo bar >> file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
13 $ echo bar >> file2
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
14 $ hg commit -Am 'append bar to files'
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
15
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
16 create a second head with conflicting edits
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
17
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
18 $ hg up -C 0
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
19 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
20 $ echo baz >> file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
21 $ echo baz >> file2
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
22 $ hg commit -Am 'append baz to files'
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
23 created new head
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
24
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
25 create a third head with no conflicting edits
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
26 $ hg up -qC 0
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
27 $ echo foo > file3
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
28 $ hg commit -Am 'add non-conflicting file'
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
29 adding file3
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
30 created new head
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
31
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
32 failing merge
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
33
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
34 $ hg up -qC 2
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
35 $ hg merge --tool=internal:fail 1
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
36 0 files updated, 0 files merged, 0 files removed, 2 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35393
diff changeset
37 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12314
diff changeset
38 [1]
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
39
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
40 resolve -l should contain unresolved entries
21263
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
41
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
42 $ hg resolve -l
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
43 U file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
44 U file2
21263
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
45
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
46 $ hg resolve -l --no-status
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
47 file1
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
48 file2
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
49
24125
18af6ebd4001 resolve: silence warning of unknown pats for -l/--list (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 23025
diff changeset
50 resolving an unknown path should emit a warning, but not for -l
23020
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
51
21265
232de244ab6f resolve: print warning when no work performed (issue4208)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21264
diff changeset
52 $ hg resolve -m does-not-exist
21721
6539c4e9c874 resolve: fix grammar of no matching files message
Matt Mackall <mpm@selenic.com>
parents: 21541
diff changeset
53 arguments do not match paths that need resolving
24125
18af6ebd4001 resolve: silence warning of unknown pats for -l/--list (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 23025
diff changeset
54 $ hg resolve -l does-not-exist
21265
232de244ab6f resolve: print warning when no work performed (issue4208)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21264
diff changeset
55
28402
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
56 tell users how they could have used resolve
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
57
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
58 $ mkdir nested
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
59 $ cd nested
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
60 $ hg resolve -m file1
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
61 arguments do not match paths that need resolving
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
62 (try: hg resolve -m path:file1)
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
63 $ hg resolve -m file1 filez
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
64 arguments do not match paths that need resolving
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
65 (try: hg resolve -m path:file1 path:filez)
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
66 $ hg resolve -m path:file1 path:filez
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
67 $ hg resolve -l
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
68 R file1
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
69 U file2
41511
72a9aacff645 resolve: respect ui.relative-paths
Martin von Zweigbergk <martinvonz@google.com>
parents: 41281
diff changeset
70 $ hg resolve -l --config ui.relative-paths=yes
72a9aacff645 resolve: respect ui.relative-paths
Martin von Zweigbergk <martinvonz@google.com>
parents: 41281
diff changeset
71 R ../file1
72a9aacff645 resolve: respect ui.relative-paths
Martin von Zweigbergk <martinvonz@google.com>
parents: 41281
diff changeset
72 U ../file2
39400
213c0493cea0 resolve: test that we suggest a valid hg command
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39393
diff changeset
73 $ hg resolve --re-merge filez file2
213c0493cea0 resolve: test that we suggest a valid hg command
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39393
diff changeset
74 arguments do not match paths that need resolving
213c0493cea0 resolve: test that we suggest a valid hg command
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39393
diff changeset
75 (try: hg resolve --re-merge path:filez path:file2)
28402
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
76 $ hg resolve -m filez file2
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
77 arguments do not match paths that need resolving
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
78 (try: hg resolve -m path:filez path:file2)
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
79 $ hg resolve -m path:filez path:file2
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
80 (no more unresolved files)
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
81 $ hg resolve -l
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
82 R file1
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
83 R file2
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
84
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
85 cleanup
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
86 $ hg resolve -u
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
87 $ cd ..
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
88 $ rmdir nested
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
89
21263
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
90 resolve the failure
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
91
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
92 $ echo resolved > file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
93 $ hg resolve -m file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
94
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
95 resolve -l should show resolved file as resolved
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
96
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
97 $ hg resolve -l
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
98 R file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
99 U file2
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
100
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
101 $ hg resolve -l -Tjson
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
102 [
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
103 {
39928
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
104 "mergestatus": "R",
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
105 "path": "file1"
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
106 },
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
107 {
39928
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
108 "mergestatus": "U",
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
109 "path": "file2"
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
110 }
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
111 ]
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
112
39928
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
113 $ hg resolve -l -T '{path} {mergestatus} {status} {p1rev} {p2rev}\n'
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
114 file1 R M 2 1
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
115 file2 U M 2 1
38544
e8c33e27ee9b resolve: add support for log-like template keywords and functions
Yuya Nishihara <yuya@tcha.org>
parents: 36645
diff changeset
116
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
117 resolve -m without paths should mark all resolved
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
118
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
119 $ hg resolve -m
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21721
diff changeset
120 (no more unresolved files)
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
121 $ hg commit -m 'resolved'
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
122
23020
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
123 resolve -l should be empty after commit
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
124
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
125 $ hg resolve -l
21541
6062593d8b06 resolve: don't abort resolve -l even when no merge is in progress
Siddharth Agarwal <sid0@fb.com>
parents: 21267
diff changeset
126
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
127 $ hg resolve -l -Tjson
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
128 [
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
129 ]
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
130
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
131 resolve --all should abort when no merge in progress
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
132
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
133 $ hg resolve --all
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
134 abort: resolve command not applicable when not merging
45840
527ce85c2e60 errors: introduce StateError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45827
diff changeset
135 [20]
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
136
23020
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
137 resolve -m should abort when no merge in progress
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
138
21541
6062593d8b06 resolve: don't abort resolve -l even when no merge is in progress
Siddharth Agarwal <sid0@fb.com>
parents: 21267
diff changeset
139 $ hg resolve -m
21264
4e932dc5c113 resolve: abort when not applicable (BC)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21263
diff changeset
140 abort: resolve command not applicable when not merging
45840
527ce85c2e60 errors: introduce StateError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45827
diff changeset
141 [20]
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
142
27316
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
143 can not update or merge when there are unresolved conflicts
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
144
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
145 $ hg up -qC 0
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
146 $ echo quux >> file1
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
147 $ hg up 1
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
148 merging file1
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
149 warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
150 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
151 use 'hg resolve' to retry unresolved file merges
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
152 [1]
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
153 $ hg up 0
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
154 abort: outstanding merge conflicts
42804
7b80ad5af239 merge: hint about using `hg resolve` for resolving conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42565
diff changeset
155 (use 'hg resolve' to resolve)
46418
dc00324e80f4 errors: use StateError more in merge module
Martin von Zweigbergk <martinvonz@google.com>
parents: 46356
diff changeset
156 [20]
27316
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
157 $ hg merge 2
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
158 abort: outstanding merge conflicts
42804
7b80ad5af239 merge: hint about using `hg resolve` for resolving conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42565
diff changeset
159 (use 'hg resolve' to resolve)
46418
dc00324e80f4 errors: use StateError more in merge module
Martin von Zweigbergk <martinvonz@google.com>
parents: 46356
diff changeset
160 [20]
27316
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
161 $ hg merge --force 2
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
162 abort: outstanding merge conflicts
42804
7b80ad5af239 merge: hint about using `hg resolve` for resolving conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42565
diff changeset
163 (use 'hg resolve' to resolve)
46418
dc00324e80f4 errors: use StateError more in merge module
Martin von Zweigbergk <martinvonz@google.com>
parents: 46356
diff changeset
164 [20]
27316
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
165
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
166 set up conflict-free merge
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
167
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
168 $ hg up -qC 3
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
169 $ hg merge 1
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
170 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
171 (branch merge, don't forget to commit)
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
172
23024
ec36969497de resolve: run happily after conflict-free merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23023
diff changeset
173 resolve --all should do nothing in merge without conflicts
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
174 $ hg resolve --all
23024
ec36969497de resolve: run happily after conflict-free merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23023
diff changeset
175 (no more unresolved files)
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
176
23024
ec36969497de resolve: run happily after conflict-free merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23023
diff changeset
177 resolve -m should do nothing in merge without conflicts
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
178
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
179 $ hg resolve -m
23024
ec36969497de resolve: run happily after conflict-free merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23023
diff changeset
180 (no more unresolved files)
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
181
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
182 get back to conflicting state
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
183
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
184 $ hg up -qC 2
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
185 $ hg merge --tool=internal:fail 1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
186 0 files updated, 0 files merged, 0 files removed, 2 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35393
diff changeset
187 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
188 [1]
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
189
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
190 resolve without arguments should suggest --all
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
191 $ hg resolve
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
192 abort: no files or directories specified
26352
e635bc9bb7d9 resolve: consistently describe re-merge + unresolved
timeless@mozdev.org
parents: 24127
diff changeset
193 (use --all to re-merge all unresolved files)
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45826
diff changeset
194 [10]
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
195
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
196 resolve --all should re-merge all unresolved files
26619
3b213a904b98 test-resolve.t: add some output to show order of operations
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
197 $ hg resolve --all
3b213a904b98 test-resolve.t: add some output to show order of operations
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
198 merging file1
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46811
diff changeset
199 warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
26621
36383507a6f8 resolve: perform all premerges before performing any file merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26620
diff changeset
200 merging file2
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26352
diff changeset
201 warning: conflicts while merging file2! (edit, then use 'hg resolve --mark')
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
202 [1]
26620
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
203 $ cat file1.orig
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
204 foo
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
205 baz
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
206 $ cat file2.orig
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
207 foo
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
208 baz
26939
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
209
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
210 .orig files should exists where specified
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
211 $ hg resolve --all --verbose --config 'ui.origbackuppath=.hg/origbackups'
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
212 merging file1
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34146
diff changeset
213 creating directory: $TESTTMP/repo/.hg/origbackups
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46811
diff changeset
214 warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
26939
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
215 merging file2
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
216 warning: conflicts while merging file2! (edit, then use 'hg resolve --mark')
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
217 [1]
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
218 $ ls .hg/origbackups
34146
9e4f82bc2b0b scmutil: don't append .orig to backups in origbackuppath (BC)
Mark Thomas <mbthomas@fb.com>
parents: 33097
diff changeset
219 file1
9e4f82bc2b0b scmutil: don't append .orig to backups in origbackuppath (BC)
Mark Thomas <mbthomas@fb.com>
parents: 33097
diff changeset
220 file2
23025
b8dd8432395d test-resolve.t: use redirection to /dev/null instead of grep -q
Augie Fackler <raf@durin42.com>
parents: 23024
diff changeset
221 $ grep '<<<' file1 > /dev/null
b8dd8432395d test-resolve.t: use redirection to /dev/null instead of grep -q
Augie Fackler <raf@durin42.com>
parents: 23024
diff changeset
222 $ grep '<<<' file2 > /dev/null
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
223
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
224 resolve <file> should re-merge file
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
225 $ echo resolved > file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
226 $ hg resolve -q file1
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26352
diff changeset
227 warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
228 [1]
23025
b8dd8432395d test-resolve.t: use redirection to /dev/null instead of grep -q
Augie Fackler <raf@durin42.com>
parents: 23024
diff changeset
229 $ grep '<<<' file1 > /dev/null
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
230
26959
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
231 test .orig behavior with resolve
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
232
27067
19b52cde2b84 test-resolve: fix '--tool f' invocation for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 27027
diff changeset
233 $ hg resolve -q file1 --tool "sh -c 'f --dump \"$TESTTMP/repo/file1.orig\"'"
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34146
diff changeset
234 $TESTTMP/repo/file1.orig:
26959
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
235 >>>
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
236 foo
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
237 baz
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
238 <<<
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
239
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
240 resolve <file> should do nothing if 'file' was marked resolved
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
241 $ echo resolved > file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
242 $ hg resolve -m file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
243 $ hg resolve -q file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
244 $ cat file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
245 resolved
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
246
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
247 insert unsupported advisory merge record
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
248
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
249 $ hg --config extensions.fakemergerecord=$TESTDIR/fakemergerecord.py fakemergerecord -x
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
250 $ hg debugmergestate
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
251 local (working copy): 57653b9f834a4493f7240b0681efcb9ae7cab745
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
252 other (merge rev): dc77451844e37f03f5c559e3b8529b2b48d381d1
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
253 file: file1 (state "r")
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
254 local path: file1 (hash 60b27f004e454aca81b0480209cce5081ec52390, flags "")
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
255 ancestor path: file1 (node 2ed2a3912a0b24502043eae84ee4b279c18b90dd)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
256 other path: file1 (node 6f4310b00b9a147241b071a60c28a650827fb03d)
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
257 extra: ancestorlinknode = 99726c03216e233810a2564cbc0adfe395007eac
46811
5a0b930cfb3e commit: get info from mergestate whether a file was merged or not
Pulkit Goyal <7895pulkit@gmail.com>
parents: 46418
diff changeset
258 extra: merged = yes
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
259 file: file2 (state "u")
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
260 local path: file2 (hash cb99b709a1978bd205ab9dfd4c5aaa1fc91c7523, flags "")
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
261 ancestor path: file2 (node 2ed2a3912a0b24502043eae84ee4b279c18b90dd)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
262 other path: file2 (node 6f4310b00b9a147241b071a60c28a650827fb03d)
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
263 extra: ancestorlinknode = 99726c03216e233810a2564cbc0adfe395007eac
46811
5a0b930cfb3e commit: get info from mergestate whether a file was merged or not
Pulkit Goyal <7895pulkit@gmail.com>
parents: 46418
diff changeset
264 extra: merged = yes
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
265 $ hg resolve -l
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
266 R file1
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
267 U file2
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
268
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
269 test json output
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
270
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
271 $ hg debugmergestate -T json
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
272 [
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
273 {
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
274 "commits": [{"label": "working copy", "name": "local", "node": "57653b9f834a4493f7240b0681efcb9ae7cab745"}, {"label": "merge rev", "name": "other", "node": "dc77451844e37f03f5c559e3b8529b2b48d381d1"}],
45445
766797f23f77 debugmergestate: show extras for files which are not in mergestate
Pulkit Goyal <7895pulkit@gmail.com>
parents: 45150
diff changeset
275 "extras": [],
46811
5a0b930cfb3e commit: get info from mergestate whether a file was merged or not
Pulkit Goyal <7895pulkit@gmail.com>
parents: 46418
diff changeset
276 "files": [{"ancestor_node": "2ed2a3912a0b24502043eae84ee4b279c18b90dd", "ancestor_path": "file1", "extras": [{"key": "ancestorlinknode", "value": "99726c03216e233810a2564cbc0adfe395007eac"}, {"key": "merged", "value": "yes"}], "local_flags": "", "local_key": "60b27f004e454aca81b0480209cce5081ec52390", "local_path": "file1", "other_node": "6f4310b00b9a147241b071a60c28a650827fb03d", "other_path": "file1", "path": "file1", "state": "r"}, {"ancestor_node": "2ed2a3912a0b24502043eae84ee4b279c18b90dd", "ancestor_path": "file2", "extras": [{"key": "ancestorlinknode", "value": "99726c03216e233810a2564cbc0adfe395007eac"}, {"key": "merged", "value": "yes"}], "local_flags": "", "local_key": "cb99b709a1978bd205ab9dfd4c5aaa1fc91c7523", "local_path": "file2", "other_node": "6f4310b00b9a147241b071a60c28a650827fb03d", "other_path": "file2", "path": "file2", "state": "u"}]
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
277 }
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
278 ]
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
279
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
280
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
281 insert unsupported mandatory merge record
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
282
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
283 $ hg --config extensions.fakemergerecord=$TESTDIR/fakemergerecord.py fakemergerecord -X
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
284 $ hg debugmergestate
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
285 abort: unsupported merge state records: X
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
286 (see https://mercurial-scm.org/wiki/MergeStateRecords for more information)
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 42804
diff changeset
287 [255]
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
288 $ hg resolve -l
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
289 abort: unsupported merge state records: X
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
290 (see https://mercurial-scm.org/wiki/MergeStateRecords for more information)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
291 [255]
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
292 $ hg resolve -ma
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
293 abort: unsupported merge state records: X
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
294 (see https://mercurial-scm.org/wiki/MergeStateRecords for more information)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
295 [255]
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
296 $ hg summary
28641
4acd5651ffa2 summary: move mergemod before parents to give access to ms
timeless <timeless@mozdev.org>
parents: 28402
diff changeset
297 warning: merge state has unsupported record types: X
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
298 parent: 2:57653b9f834a
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
299 append baz to files
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
300 parent: 1:dc77451844e3
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
301 append bar to files
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
302 branch: default
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
303 commit: 2 modified, 2 unknown (merge)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
304 update: 2 new changesets (update)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
305 phases: 5 draft
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
306
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
307 update --clean shouldn't abort on unsupported records
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
308
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
309 $ hg up -qC 1
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
310 $ hg debugmergestate
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
311 no merge state found
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
312
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
313 test crashed merge with empty mergestate
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
314
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
315 $ mkdir .hg/merge
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
316 $ touch .hg/merge/state
11451
51021f4c80b5 resolve: do not crash on empty mergestate
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
317
23020
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
318 resolve -l should be empty
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
319
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
320 $ hg resolve -l
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
321
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
322 resolve -m can be configured to look for remaining conflict markers
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
323 $ hg up -qC 2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
324 $ hg merge -q --tool=internal:merge 1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
325 warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
326 warning: conflicts while merging file2! (edit, then use 'hg resolve --mark')
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
327 [1]
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
328 $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
329 U file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
330 U file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
331 $ echo 'remove markers' > file1
38857
96d0795bd0bd resolve: graduate resolve.mark-check from experimental, add docs
Kyle Lippincott <spectral@google.com>
parents: 38822
diff changeset
332 $ hg --config commands.resolve.mark-check=abort resolve -m
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
333 warning: the following files still have conflict markers:
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
334 file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
335 abort: conflict markers detected
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
336 (use --all to mark anyway)
45840
527ce85c2e60 errors: introduce StateError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45827
diff changeset
337 [20]
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
338 $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
339 U file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
340 U file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
341 Try with --all from the hint
38857
96d0795bd0bd resolve: graduate resolve.mark-check from experimental, add docs
Kyle Lippincott <spectral@google.com>
parents: 38822
diff changeset
342 $ hg --config commands.resolve.mark-check=abort resolve -m --all
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
343 warning: the following files still have conflict markers:
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
344 file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
345 (no more unresolved files)
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
346 $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
347 R file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
348 R file2
46356
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
349 Test with :mergediff conflict markers
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
350 $ hg resolve --unmark
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
351 $ hg resolve --re-merge -t :mergediff file2
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
352 merging file2
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
353 warning: conflicts while merging file2! (edit, then use 'hg resolve --mark')
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
354 [1]
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
355 $ hg resolve -l
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
356 U file1
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
357 U file2
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
358 $ hg --config commands.resolve.mark-check=abort resolve -m
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
359 warning: the following files still have conflict markers:
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
360 file2
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
361 abort: conflict markers detected
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
362 (use --all to mark anyway)
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
363 [20]
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
364 $ hg resolve -l
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
365 U file1
0c95b59a89f1 resolve: also detect new :mergediff conflict markers
Martin von Zweigbergk <martinvonz@google.com>
parents: 45877
diff changeset
366 U file2
38873
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
367 Test option value 'warn'
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
368 $ hg resolve --unmark
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
369 $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
370 U file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
371 U file2
38857
96d0795bd0bd resolve: graduate resolve.mark-check from experimental, add docs
Kyle Lippincott <spectral@google.com>
parents: 38822
diff changeset
372 $ hg --config commands.resolve.mark-check=warn resolve -m
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
373 warning: the following files still have conflict markers:
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
374 file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
375 (no more unresolved files)
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
376 $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
377 R file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
378 R file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
379 If the file is already marked as resolved, we don't warn about it
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
380 $ hg resolve --unmark file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
381 $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
382 U file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
383 R file2
38857
96d0795bd0bd resolve: graduate resolve.mark-check from experimental, add docs
Kyle Lippincott <spectral@google.com>
parents: 38822
diff changeset
384 $ hg --config commands.resolve.mark-check=warn resolve -m
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
385 (no more unresolved files)
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
386 $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
387 R file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
388 R file2
38873
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
389 If the user passes an invalid value, we treat it as 'none'.
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
390 $ hg resolve --unmark
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
391 $ hg resolve -l
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
392 U file1
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
393 U file2
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
394 $ hg --config commands.resolve.mark-check=nope resolve -m
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
395 (no more unresolved files)
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
396 $ hg resolve -l
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
397 R file1
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
398 R file2
40567
8785d66edd6e tests: fix a couple typos in test-resolve.t comments and add a comment
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
399 Test explicitly setting the option to 'none'
38873
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
400 $ hg resolve --unmark
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
401 $ hg resolve -l
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
402 U file1
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
403 U file2
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
404 $ hg --config commands.resolve.mark-check=none resolve -m
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
405 (no more unresolved files)
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
406 $ hg resolve -l
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
407 R file1
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
408 R file2
40472
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
409 Test with marking an explicit file as resolved, this should not abort (since
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
410 there's no --force flag, we have no way of combining --all with a filename)
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
411 $ hg resolve --unmark
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
412 $ hg resolve -l
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
413 U file1
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
414 U file2
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
415 (This downgrades to a warning since an explicit file was specified).
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
416 $ hg --config commands.resolve.mark-check=abort resolve -m file2
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
417 warning: the following files still have conflict markers:
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
418 file2
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
419 $ hg resolve -l
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
420 U file1
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
421 R file2
39392
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
422 Testing the --re-merge flag
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
423 $ hg resolve --unmark file1
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
424 $ hg resolve -l
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
425 U file1
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
426 R file2
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
427 $ hg resolve --mark --re-merge
39393
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
428 abort: too many actions specified
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45826
diff changeset
429 [10]
39392
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
430 $ hg resolve --re-merge --all
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
431 merging file1
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
432 warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
433 [1]
39393
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
434 Explicit re-merge
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
435 $ hg resolve --unmark file1
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
436 $ hg resolve --config commands.resolve.explicit-re-merge=1 --all
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
437 abort: no action specified
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
438 (use --mark, --unmark, --list or --re-merge)
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45826
diff changeset
439 [10]
39393
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
440 $ hg resolve --config commands.resolve.explicit-re-merge=1 --re-merge --all
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
441 merging file1
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
442 warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
443 [1]
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
444
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
445 $ cd ..
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
446
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
447 ======================================================
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
448 Test 'hg resolve' confirm config option functionality |
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
449 ======================================================
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
450 $ cat >> $HGRCPATH << EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
451 > [extensions]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
452 > rebase=
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
453 > EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
454
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
455 $ hg init repo2
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
456 $ cd repo2
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
457
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
458 $ echo boss > boss
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
459 $ hg ci -Am "add boss"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
460 adding boss
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
461
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
462 $ for emp in emp1 emp2 emp3; do echo work > $emp; done;
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
463 $ hg ci -Aqm "added emp1 emp2 emp3"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
464
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
465 $ hg up 0
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
466 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
467
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
468 $ for emp in emp1 emp2 emp3; do echo nowork > $emp; done;
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
469 $ hg ci -Aqm "added lazy emp1 emp2 emp3"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
470
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
471 $ hg log -GT "{rev} {node|short} {firstline(desc)}\n"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
472 @ 2 0acfd4a49af0 added lazy emp1 emp2 emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
473 |
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
474 | o 1 f30f98a8181f added emp1 emp2 emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
475 |/
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
476 o 0 88660038d466 add boss
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
477
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
478 $ hg rebase -s 1 -d 2
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
479 rebasing 1:f30f98a8181f "added emp1 emp2 emp3"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
480 merging emp1
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46811
diff changeset
481 warning: conflicts while merging emp1! (edit, then use 'hg resolve --mark')
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
482 merging emp2
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46811
diff changeset
483 warning: conflicts while merging emp2! (edit, then use 'hg resolve --mark')
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
484 merging emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
485 warning: conflicts while merging emp3! (edit, then use 'hg resolve --mark')
45150
dc5e5577af39 error: unify the error message formats for 'rebase' and 'unshelve'
Daniel Ploch <dploch@google.com>
parents: 44856
diff changeset
486 unresolved conflicts (see 'hg resolve', then 'hg rebase --continue')
45826
21733e8c924f errors: add config that lets user get more detailed exit codes
Martin von Zweigbergk <martinvonz@google.com>
parents: 45518
diff changeset
487 [240]
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
488
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
489 Test when commands.resolve.confirm config option is not set:
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
490 ===========================================================
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
491 $ hg resolve --all
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
492 merging emp1
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46811
diff changeset
493 warning: conflicts while merging emp1! (edit, then use 'hg resolve --mark')
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
494 merging emp2
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46811
diff changeset
495 warning: conflicts while merging emp2! (edit, then use 'hg resolve --mark')
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
496 merging emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
497 warning: conflicts while merging emp3! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
498 [1]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
499
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
500 Test when config option is set:
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
501 ==============================
40568
b93157f69f46 tests: make the commands.resolve.confirm tests not pollute the test-wide hgrc
Kyle Lippincott <spectral@google.com>
parents: 40567
diff changeset
502 $ cat >> .hg/hgrc << EOF
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
503 > [ui]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
504 > interactive = True
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
505 > [commands]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
506 > resolve.confirm = True
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
507 > EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
508
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
509 $ hg resolve
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
510 abort: no files or directories specified
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
511 (use --all to re-merge all unresolved files)
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45826
diff changeset
512 [10]
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
513 $ hg resolve --all << EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
514 > n
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
515 > EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
516 re-merge all unresolved files (yn)? n
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
517 abort: user quit
45877
ac362d5a7893 errors: introduce CanceledError and use it in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 45840
diff changeset
518 [250]
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
519
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
520 $ hg resolve --all << EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
521 > y
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
522 > EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
523 re-merge all unresolved files (yn)? y
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
524 merging emp1
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46811
diff changeset
525 warning: conflicts while merging emp1! (edit, then use 'hg resolve --mark')
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
526 merging emp2
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46811
diff changeset
527 warning: conflicts while merging emp2! (edit, then use 'hg resolve --mark')
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
528 merging emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
529 warning: conflicts while merging emp3! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
530 [1]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
531
38859
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
532 Test that commands.resolve.confirm respect --mark option (only when no patterns args are given):
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
533 ===============================================================================================
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
534
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
535 $ hg resolve -m emp1
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
536 $ hg resolve -l
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
537 R emp1
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
538 U emp2
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
539 U emp3
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
540
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
541 $ hg resolve -m << EOF
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
542 > n
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
543 > EOF
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
544 mark all unresolved files as resolved (yn)? n
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
545 abort: user quit
45877
ac362d5a7893 errors: introduce CanceledError and use it in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 45840
diff changeset
546 [250]
38859
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
547
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
548 $ hg resolve -m << EOF
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
549 > y
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
550 > EOF
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
551 mark all unresolved files as resolved (yn)? y
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
552 (no more unresolved files)
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
553 continue: hg rebase --continue
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
554 $ hg resolve -l
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
555 R emp1
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
556 R emp2
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
557 R emp3
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
558
38874
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
559 Test that commands.resolve.confirm respect --unmark option (only when no patterns args are given):
40567
8785d66edd6e tests: fix a couple typos in test-resolve.t comments and add a comment
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
560 =================================================================================================
38874
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
561
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
562 $ hg resolve -u emp1
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
563
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
564 $ hg resolve -l
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
565 U emp1
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
566 R emp2
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
567 R emp3
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
568
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
569 $ hg resolve -u << EOF
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
570 > n
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
571 > EOF
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
572 mark all resolved files as unresolved (yn)? n
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
573 abort: user quit
45877
ac362d5a7893 errors: introduce CanceledError and use it in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 45840
diff changeset
574 [250]
38874
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
575
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
576 $ hg resolve -m << EOF
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
577 > y
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
578 > EOF
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
579 mark all unresolved files as resolved (yn)? y
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
580 (no more unresolved files)
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
581 continue: hg rebase --continue
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
582
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
583 $ hg resolve -l
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
584 R emp1
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
585 R emp2
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
586 R emp3
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
587
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
588 $ hg rebase --abort
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
589 rebase aborted
40567
8785d66edd6e tests: fix a couple typos in test-resolve.t comments and add a comment
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
590
8785d66edd6e tests: fix a couple typos in test-resolve.t comments and add a comment
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
591 Done with commands.resolve.confirm tests:
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
592 $ cd ..
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
593
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
594 Test that commands.resolve.mark-check works even if there are deleted files:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
595 $ hg init resolve-deleted
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
596 $ cd resolve-deleted
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
597 $ echo r0 > file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
598 $ hg ci -qAm r0
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
599 $ echo r1 > file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
600 $ hg ci -qm r1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
601 $ hg co -qr 0
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
602 $ hg rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
603 $ hg ci -qm "r2 (delete file1)"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
604
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
605 (At this point we have r0 creating file1, and sibling commits r1 and r2, which
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
606 modify and delete file1, respectively)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
607
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
608 $ hg merge -r 1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
609 file 'file1' was deleted in local [working copy] but was modified in other [merge rev].
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
610 You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
611 What do you want to do? u
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
612 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
613 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
614 [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
615 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
616 U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
617 Because we left it as 'unresolved' the file should still exist.
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
618 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
619 BC behavior: `hg resolve --mark` accepts that the file is still there, and
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
620 doesn't have a problem with this situation.
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
621 $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
622 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
623 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
624 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
625 The file is still there:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
626 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
627 Let's check mark-check=warn:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
628 $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
629 $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
630 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
631 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
632 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
633 The file is still there:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
634 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
635 Let's resolve the issue by deleting the file via `hg resolve`
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
636 $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
637 $ echo 'd' | hg resolve file1 --config ui.interactive=1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
638 file 'file1' was deleted in local [working copy] but was modified in other [merge rev].
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
639 You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
640 What do you want to do? d
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
641 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
642 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
643 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
644 The file is deleted:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
645 $ [ -f file1 ] && echo "File still exists?" || true
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
646 Doing `hg resolve --mark` doesn't break now that the file is missing:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
647 $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
648 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
649 $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
650 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
651 Resurrect the file, and delete it outside of hg:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
652 $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
653 $ hg resolve file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
654 file 'file1' was deleted in local [working copy] but was modified in other [merge rev].
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
655 You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
656 What do you want to do? u
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
657 [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
658 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
659 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
660 U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
661 $ rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
662 $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
663 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
664 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
665 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
666 $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
667 $ hg resolve file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
668 file 'file1' was deleted in local [working copy] but was modified in other [merge rev].
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
669 You can use (c)hanged version, leave (d)eleted, or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
670 What do you want to do? u
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
671 [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
672 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
673 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
674 U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
675 $ rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
676 $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
677 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
678 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
679 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
680
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
681
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
682 For completeness, let's try that in the opposite direction (merging r2 into r1,
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
683 instead of r1 into r2):
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
684 $ hg update -qCr 1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
685 $ hg merge -r 2
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
686 file 'file1' was deleted in other [merge rev] but was modified in local [working copy].
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
687 You can use (c)hanged version, (d)elete, or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
688 What do you want to do? u
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
689 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
690 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
691 [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
692 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
693 U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
694 Because we left it as 'unresolved' the file should still exist.
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
695 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
696 BC behavior: `hg resolve --mark` accepts that the file is still there, and
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
697 doesn't have a problem with this situation.
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
698 $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
699 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
700 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
701 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
702 The file is still there:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
703 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
704 Let's check mark-check=warn:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
705 $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
706 $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
707 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
708 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
709 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
710 The file is still there:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
711 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
712 Let's resolve the issue by deleting the file via `hg resolve`
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
713 $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
714 $ echo 'd' | hg resolve file1 --config ui.interactive=1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
715 file 'file1' was deleted in other [merge rev] but was modified in local [working copy].
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
716 You can use (c)hanged version, (d)elete, or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
717 What do you want to do? d
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
718 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
719 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
720 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
721 The file is deleted:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
722 $ [ -f file1 ] && echo "File still exists?" || true
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
723 Doing `hg resolve --mark` doesn't break now that the file is missing:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
724 $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
725 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
726 $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
727 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
728 Resurrect the file, and delete it outside of hg:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
729 $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
730 $ hg resolve file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
731 file 'file1' was deleted in other [merge rev] but was modified in local [working copy].
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
732 You can use (c)hanged version, (d)elete, or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
733 What do you want to do? u
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
734 [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
735 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
736 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
737 U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
738 $ rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
739 $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
740 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
741 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
742 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
743 $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
744 $ hg resolve file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
745 file 'file1' was deleted in other [merge rev] but was modified in local [working copy].
42565
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
746 You can use (c)hanged version, (d)elete, or leave (u)nresolved.
4764e8436b2a filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents: 41511
diff changeset
747 What do you want to do? u
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
748 [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
749 $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
750 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
751 U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
752 $ rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
753 $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
754 (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
755 $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
756 R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
757
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
758 $ cd ..