Show More
@@ -287,6 +287,7 b' def mergecopies(repo, c1, c2, ca):' | |||||
287 | checkcopies(f, m2, m1) |
|
287 | checkcopies(f, m2, m1) | |
288 |
|
288 | |||
289 | renamedelete = {} |
|
289 | renamedelete = {} | |
|
290 | renamedelete2 = set() | |||
290 | diverge2 = set() |
|
291 | diverge2 = set() | |
291 | for of, fl in diverge.items(): |
|
292 | for of, fl in diverge.items(): | |
292 | if len(fl) == 1 or of in c1 or of in c2: |
|
293 | if len(fl) == 1 or of in c1 or of in c2: | |
@@ -295,17 +296,21 b' def mergecopies(repo, c1, c2, ca):' | |||||
295 | # renamed on one side, deleted on the other side, but filter |
|
296 | # renamed on one side, deleted on the other side, but filter | |
296 | # out files that have been renamed and then deleted |
|
297 | # out files that have been renamed and then deleted | |
297 | renamedelete[of] = [f for f in fl if f in c1 or f in c2] |
|
298 | renamedelete[of] = [f for f in fl if f in c1 or f in c2] | |
|
299 | renamedelete2.update(fl) # reverse map for below | |||
298 | else: |
|
300 | else: | |
299 | diverge2.update(fl) # reverse map for below |
|
301 | diverge2.update(fl) # reverse map for below | |
300 |
|
302 | |||
301 | if fullcopy: |
|
303 | if fullcopy: | |
302 |
repo.ui.debug(" all copies found (* = to merge, ! = divergent |
|
304 | repo.ui.debug(" all copies found (* = to merge, ! = divergent, " | |
|
305 | "% = renamed and deleted):\n") | |||
303 | for f in fullcopy: |
|
306 | for f in fullcopy: | |
304 | note = "" |
|
307 | note = "" | |
305 | if f in copy: |
|
308 | if f in copy: | |
306 | note += "*" |
|
309 | note += "*" | |
307 | if f in diverge2: |
|
310 | if f in diverge2: | |
308 | note += "!" |
|
311 | note += "!" | |
|
312 | if f in renamedelete2: | |||
|
313 | note += "%" | |||
309 | repo.ui.debug(" %s -> %s %s\n" % (f, fullcopy[f], note)) |
|
314 | repo.ui.debug(" %s -> %s %s\n" % (f, fullcopy[f], note)) | |
310 | del diverge2 |
|
315 | del diverge2 | |
311 |
|
316 |
@@ -24,7 +24,7 b'' | |||||
24 | unmatched files in other: |
|
24 | unmatched files in other: | |
25 | b |
|
25 | b | |
26 | c |
|
26 | c | |
27 | all copies found (* = to merge, ! = divergent): |
|
27 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
28 | c -> a * |
|
28 | c -> a * | |
29 | b -> a * |
|
29 | b -> a * | |
30 | checking for directory renames |
|
30 | checking for directory renames |
@@ -29,7 +29,7 b" we get conflicts that shouldn't be there" | |||||
29 | searching for copies back to rev 1 |
|
29 | searching for copies back to rev 1 | |
30 | unmatched files in other: |
|
30 | unmatched files in other: | |
31 | bar |
|
31 | bar | |
32 | all copies found (* = to merge, ! = divergent): |
|
32 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
33 | bar -> foo * |
|
33 | bar -> foo * | |
34 | checking for directory renames |
|
34 | checking for directory renames | |
35 | resolving manifests |
|
35 | resolving manifests |
@@ -118,7 +118,7 b' Graft out of order, skipping a merge and' | |||||
118 | searching for copies back to rev 1 |
|
118 | searching for copies back to rev 1 | |
119 | unmatched files in local: |
|
119 | unmatched files in local: | |
120 | b |
|
120 | b | |
121 | all copies found (* = to merge, ! = divergent): |
|
121 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
122 | b -> a * |
|
122 | b -> a * | |
123 | checking for directory renames |
|
123 | checking for directory renames | |
124 | resolving manifests |
|
124 | resolving manifests |
@@ -28,7 +28,7 b' http://mercurial.selenic.com/bts/issue67' | |||||
28 | searching for copies back to rev 1 |
|
28 | searching for copies back to rev 1 | |
29 | unmatched files in other: |
|
29 | unmatched files in other: | |
30 | 1a |
|
30 | 1a | |
31 | all copies found (* = to merge, ! = divergent): |
|
31 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
32 | 1a -> 1 |
|
32 | 1a -> 1 | |
33 | checking for directory renames |
|
33 | checking for directory renames | |
34 | resolving manifests |
|
34 | resolving manifests | |
@@ -59,7 +59,7 b' http://mercurial.selenic.com/bts/issue67' | |||||
59 | searching for copies back to rev 1 |
|
59 | searching for copies back to rev 1 | |
60 | unmatched files in local: |
|
60 | unmatched files in local: | |
61 | 1a |
|
61 | 1a | |
62 | all copies found (* = to merge, ! = divergent): |
|
62 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
63 | 1a -> 1 * |
|
63 | 1a -> 1 * | |
64 | checking for directory renames |
|
64 | checking for directory renames | |
65 | resolving manifests |
|
65 | resolving manifests | |
@@ -82,7 +82,7 b' http://mercurial.selenic.com/bts/issue67' | |||||
82 | searching for copies back to rev 1 |
|
82 | searching for copies back to rev 1 | |
83 | unmatched files in other: |
|
83 | unmatched files in other: | |
84 | 1a |
|
84 | 1a | |
85 | all copies found (* = to merge, ! = divergent): |
|
85 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
86 | 1a -> 1 * |
|
86 | 1a -> 1 * | |
87 | checking for directory renames |
|
87 | checking for directory renames | |
88 | resolving manifests |
|
88 | resolving manifests |
@@ -30,7 +30,7 b'' | |||||
30 | unmatched files in other: |
|
30 | unmatched files in other: | |
31 | b/a |
|
31 | b/a | |
32 | b/b |
|
32 | b/b | |
33 | all copies found (* = to merge, ! = divergent): |
|
33 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
34 | b/a -> a/a |
|
34 | b/a -> a/a | |
35 | b/b -> a/b |
|
35 | b/b -> a/b | |
36 | checking for directory renames |
|
36 | checking for directory renames | |
@@ -81,7 +81,7 b'' | |||||
81 | b/b |
|
81 | b/b | |
82 | unmatched files in other: |
|
82 | unmatched files in other: | |
83 | a/c |
|
83 | a/c | |
84 | all copies found (* = to merge, ! = divergent): |
|
84 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
85 | b/a -> a/a |
|
85 | b/a -> a/a | |
86 | b/b -> a/b |
|
86 | b/b -> a/b | |
87 | checking for directory renames |
|
87 | checking for directory renames |
@@ -28,7 +28,7 b'' | |||||
28 | unmatched files in other: |
|
28 | unmatched files in other: | |
29 | b |
|
29 | b | |
30 | b2 |
|
30 | b2 | |
31 | all copies found (* = to merge, ! = divergent): |
|
31 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
32 | c2 -> a2 ! |
|
32 | c2 -> a2 ! | |
33 | b -> a * |
|
33 | b -> a * | |
34 | b2 -> a2 ! |
|
34 | b2 -> a2 ! | |
@@ -171,9 +171,23 b' Check for issue3074' | |||||
171 | $ hg rm file |
|
171 | $ hg rm file | |
172 | $ hg commit -m "deleted file" |
|
172 | $ hg commit -m "deleted file" | |
173 | created new head |
|
173 | created new head | |
174 | $ hg merge |
|
174 | $ hg merge --debug | |
|
175 | searching for copies back to rev 1 | |||
|
176 | unmatched files in other: | |||
|
177 | newfile | |||
|
178 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |||
|
179 | newfile -> file % | |||
|
180 | checking for directory renames | |||
|
181 | file: rename and delete -> rd | |||
|
182 | resolving manifests | |||
|
183 | overwrite: False, partial: False | |||
|
184 | ancestor: 19d7f95df299, local: 0084274f6b67+, remote: 5d32493049f0 | |||
|
185 | newfile: remote created -> g | |||
|
186 | updating: file 1/2 files (50.00%) | |||
175 | note: possible conflict - file was deleted and renamed to: |
|
187 | note: possible conflict - file was deleted and renamed to: | |
176 | newfile |
|
188 | newfile | |
|
189 | updating: newfile 2/2 files (100.00%) | |||
|
190 | getting newfile | |||
177 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
191 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
178 | (branch merge, don't forget to commit) |
|
192 | (branch merge, don't forget to commit) | |
179 | $ hg status |
|
193 | $ hg status |
@@ -80,7 +80,7 b' args:' | |||||
80 | searching for copies back to rev 1 |
|
80 | searching for copies back to rev 1 | |
81 | unmatched files in other: |
|
81 | unmatched files in other: | |
82 | b |
|
82 | b | |
83 | all copies found (* = to merge, ! = divergent): |
|
83 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
84 | b -> a * |
|
84 | b -> a * | |
85 | checking for directory renames |
|
85 | checking for directory renames | |
86 | resolving manifests |
|
86 | resolving manifests | |
@@ -115,7 +115,7 b' args:' | |||||
115 | searching for copies back to rev 1 |
|
115 | searching for copies back to rev 1 | |
116 | unmatched files in local: |
|
116 | unmatched files in local: | |
117 | b |
|
117 | b | |
118 | all copies found (* = to merge, ! = divergent): |
|
118 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
119 | b -> a * |
|
119 | b -> a * | |
120 | checking for directory renames |
|
120 | checking for directory renames | |
121 | resolving manifests |
|
121 | resolving manifests | |
@@ -153,7 +153,7 b' args:' | |||||
153 | searching for copies back to rev 1 |
|
153 | searching for copies back to rev 1 | |
154 | unmatched files in other: |
|
154 | unmatched files in other: | |
155 | b |
|
155 | b | |
156 | all copies found (* = to merge, ! = divergent): |
|
156 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
157 | b -> a * |
|
157 | b -> a * | |
158 | checking for directory renames |
|
158 | checking for directory renames | |
159 | resolving manifests |
|
159 | resolving manifests | |
@@ -188,7 +188,7 b' args:' | |||||
188 | searching for copies back to rev 1 |
|
188 | searching for copies back to rev 1 | |
189 | unmatched files in local: |
|
189 | unmatched files in local: | |
190 | b |
|
190 | b | |
191 | all copies found (* = to merge, ! = divergent): |
|
191 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
192 | b -> a * |
|
192 | b -> a * | |
193 | checking for directory renames |
|
193 | checking for directory renames | |
194 | resolving manifests |
|
194 | resolving manifests | |
@@ -222,7 +222,7 b' args:' | |||||
222 | searching for copies back to rev 1 |
|
222 | searching for copies back to rev 1 | |
223 | unmatched files in other: |
|
223 | unmatched files in other: | |
224 | b |
|
224 | b | |
225 | all copies found (* = to merge, ! = divergent): |
|
225 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
226 | b -> a |
|
226 | b -> a | |
227 | checking for directory renames |
|
227 | checking for directory renames | |
228 | resolving manifests |
|
228 | resolving manifests | |
@@ -252,7 +252,7 b' args:' | |||||
252 | searching for copies back to rev 1 |
|
252 | searching for copies back to rev 1 | |
253 | unmatched files in local: |
|
253 | unmatched files in local: | |
254 | b |
|
254 | b | |
255 | all copies found (* = to merge, ! = divergent): |
|
255 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
256 | b -> a |
|
256 | b -> a | |
257 | checking for directory renames |
|
257 | checking for directory renames | |
258 | resolving manifests |
|
258 | resolving manifests | |
@@ -279,7 +279,7 b' args:' | |||||
279 | searching for copies back to rev 1 |
|
279 | searching for copies back to rev 1 | |
280 | unmatched files in other: |
|
280 | unmatched files in other: | |
281 | b |
|
281 | b | |
282 | all copies found (* = to merge, ! = divergent): |
|
282 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
283 | b -> a |
|
283 | b -> a | |
284 | checking for directory renames |
|
284 | checking for directory renames | |
285 | resolving manifests |
|
285 | resolving manifests | |
@@ -311,7 +311,7 b' args:' | |||||
311 | searching for copies back to rev 1 |
|
311 | searching for copies back to rev 1 | |
312 | unmatched files in local: |
|
312 | unmatched files in local: | |
313 | b |
|
313 | b | |
314 | all copies found (* = to merge, ! = divergent): |
|
314 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
315 | b -> a |
|
315 | b -> a | |
316 | checking for directory renames |
|
316 | checking for directory renames | |
317 | resolving manifests |
|
317 | resolving manifests | |
@@ -369,7 +369,7 b' m "um a c" "um x c" " " "10 do merg' | |||||
369 | b |
|
369 | b | |
370 | unmatched files in other: |
|
370 | unmatched files in other: | |
371 | c |
|
371 | c | |
372 | all copies found (* = to merge, ! = divergent): |
|
372 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
373 | c -> a ! |
|
373 | c -> a ! | |
374 | b -> a ! |
|
374 | b -> a ! | |
375 | checking for directory renames |
|
375 | checking for directory renames | |
@@ -648,7 +648,7 b' m "um a c" "um x c" " " "10 do merg' | |||||
648 | searching for copies back to rev 1 |
|
648 | searching for copies back to rev 1 | |
649 | unmatched files in other: |
|
649 | unmatched files in other: | |
650 | b |
|
650 | b | |
651 | all copies found (* = to merge, ! = divergent): |
|
651 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
652 | b -> a * |
|
652 | b -> a * | |
653 | checking for directory renames |
|
653 | checking for directory renames | |
654 | resolving manifests |
|
654 | resolving manifests | |
@@ -682,7 +682,7 b' m "um a c" "um x c" " " "10 do merg' | |||||
682 | searching for copies back to rev 1 |
|
682 | searching for copies back to rev 1 | |
683 | unmatched files in local: |
|
683 | unmatched files in local: | |
684 | b |
|
684 | b | |
685 | all copies found (* = to merge, ! = divergent): |
|
685 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
686 | b -> a * |
|
686 | b -> a * | |
687 | checking for directory renames |
|
687 | checking for directory renames | |
688 | resolving manifests |
|
688 | resolving manifests | |
@@ -720,7 +720,7 b' m "nm a b" "um x a" " " "22 get a, ' | |||||
720 | b |
|
720 | b | |
721 | unmatched files in other: |
|
721 | unmatched files in other: | |
722 | c |
|
722 | c | |
723 | all copies found (* = to merge, ! = divergent): |
|
723 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | |
724 | b -> a * |
|
724 | b -> a * | |
725 | checking for directory renames |
|
725 | checking for directory renames | |
726 | resolving manifests |
|
726 | resolving manifests |
General Comments 0
You need to be logged in to leave comments.
Login now