Mercurial > hg
comparison tests/test-rename-merge2.t @ 12484:59012130b43e
tests: unify test-rename-merge2
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 26 Sep 2010 13:44:49 -0500 |
parents | tests/test-rename-merge2@6c82beaaa11a |
children | 4c4aeaab2339 |
comparison
equal
deleted
inserted
replaced
12483:fecd4966f8d4 | 12484:59012130b43e |
---|---|
1 | |
2 $ mkdir -p t | |
3 $ cd t | |
4 $ cat <<EOF > merge | |
5 > import sys, os | |
6 > f = open(sys.argv[1], "wb") | |
7 > f.write("merge %s %s %s" % (sys.argv[1], sys.argv[2], sys.argv[3])) | |
8 > f.close() | |
9 > EOF | |
10 $ HGMERGE="python ../merge"; export HGMERGE | |
11 | |
12 perform a test merge with possible renaming | |
13 args: | |
14 $1 = action in local branch | |
15 $2 = action in remote branch | |
16 $3 = action in working dir | |
17 $4 = expected result | |
18 | |
19 $ tm() | |
20 > { | |
21 > mkdir t | |
22 > cd t | |
23 > hg init | |
24 > echo "[merge]" >> .hg/hgrc | |
25 > echo "followcopies = 1" >> .hg/hgrc | |
26 > | |
27 > # base | |
28 > echo base > a | |
29 > echo base > rev # used to force commits | |
30 > hg add a rev | |
31 > hg ci -m "base" | |
32 > | |
33 > # remote | |
34 > echo remote > rev | |
35 > if [ "$2" != "" ] ; then $2 ; fi | |
36 > hg ci -m "remote" | |
37 > | |
38 > # local | |
39 > hg co -q 0 | |
40 > echo local > rev | |
41 > if [ "$1" != "" ] ; then $1 ; fi | |
42 > hg ci -m "local" | |
43 > | |
44 > # working dir | |
45 > echo local > rev | |
46 > if [ "$3" != "" ] ; then $3 ; fi | |
47 > | |
48 > # merge | |
49 > echo "--------------" | |
50 > echo "test L:$1 R:$2 W:$3 - $4" | |
51 > echo "--------------" | |
52 > hg merge -y --debug --traceback | |
53 > | |
54 > echo "--------------" | |
55 > hg status -camC -X rev | |
56 > | |
57 > hg ci -m "merge" | |
58 > | |
59 > echo "--------------" | |
60 > echo | |
61 > | |
62 > cd .. | |
63 > rm -r t | |
64 > } | |
65 $ up() { | |
66 > cp rev $1 | |
67 > hg add $1 2> /dev/null | |
68 > if [ "$2" != "" ] ; then | |
69 > cp rev $2 | |
70 > hg add $2 2> /dev/null | |
71 > fi | |
72 > } | |
73 $ uc() { up $1; hg cp $1 $2; } # update + copy | |
74 $ um() { up $1; hg mv $1 $2; } | |
75 $ nc() { hg cp $1 $2; } # just copy | |
76 $ nm() { hg mv $1 $2; } # just move | |
77 $ tm "up a " "nc a b" " " "1 get local a to b" | |
78 created new head | |
79 -------------- | |
80 test L:up a R:nc a b W: - 1 get local a to b | |
81 -------------- | |
82 searching for copies back to rev 1 | |
83 unmatched files in other: | |
84 b | |
85 all copies found (* = to merge, ! = divergent): | |
86 b -> a * | |
87 checking for directory renames | |
88 resolving manifests | |
89 overwrite None partial False | |
90 ancestor 924404dff337 local e300d1c794ec+ remote 4ce40f5aca24 | |
91 rev: versions differ -> m | |
92 a: remote copied to b -> m | |
93 preserving a for resolve of b | |
94 preserving rev for resolve of rev | |
95 updating: a 1/2 files (50.00%) | |
96 picked tool 'python ../merge' for b (binary False symlink False) | |
97 merging a and b to b | |
98 my b@e300d1c794ec+ other b@4ce40f5aca24 ancestor a@924404dff337 | |
99 premerge successful | |
100 updating: rev 2/2 files (100.00%) | |
101 picked tool 'python ../merge' for rev (binary False symlink False) | |
102 merging rev | |
103 my rev@e300d1c794ec+ other rev@4ce40f5aca24 ancestor rev@924404dff337 | |
104 0 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
105 (branch merge, don't forget to commit) | |
106 -------------- | |
107 M b | |
108 a | |
109 C a | |
110 -------------- | |
111 | |
112 $ tm "nc a b" "up a " " " "2 get rem change to a and b" | |
113 created new head | |
114 -------------- | |
115 test L:nc a b R:up a W: - 2 get rem change to a and b | |
116 -------------- | |
117 searching for copies back to rev 1 | |
118 unmatched files in local: | |
119 b | |
120 all copies found (* = to merge, ! = divergent): | |
121 b -> a * | |
122 checking for directory renames | |
123 resolving manifests | |
124 overwrite None partial False | |
125 ancestor 924404dff337 local 86a2aa42fc76+ remote f4db7e329e71 | |
126 a: remote is newer -> g | |
127 b: local copied/moved to a -> m | |
128 rev: versions differ -> m | |
129 preserving b for resolve of b | |
130 preserving rev for resolve of rev | |
131 updating: a 1/3 files (33.33%) | |
132 getting a | |
133 updating: b 2/3 files (66.67%) | |
134 picked tool 'python ../merge' for b (binary False symlink False) | |
135 merging b and a to b | |
136 my b@86a2aa42fc76+ other a@f4db7e329e71 ancestor a@924404dff337 | |
137 premerge successful | |
138 updating: rev 3/3 files (100.00%) | |
139 picked tool 'python ../merge' for rev (binary False symlink False) | |
140 merging rev | |
141 my rev@86a2aa42fc76+ other rev@f4db7e329e71 ancestor rev@924404dff337 | |
142 1 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
143 (branch merge, don't forget to commit) | |
144 -------------- | |
145 M a | |
146 M b | |
147 a | |
148 -------------- | |
149 | |
150 $ tm "up a " "nm a b" " " "3 get local a change to b, remove a" | |
151 created new head | |
152 -------------- | |
153 test L:up a R:nm a b W: - 3 get local a change to b, remove a | |
154 -------------- | |
155 searching for copies back to rev 1 | |
156 unmatched files in other: | |
157 b | |
158 all copies found (* = to merge, ! = divergent): | |
159 b -> a * | |
160 checking for directory renames | |
161 resolving manifests | |
162 overwrite None partial False | |
163 ancestor 924404dff337 local e300d1c794ec+ remote bdb19105162a | |
164 rev: versions differ -> m | |
165 a: remote moved to b -> m | |
166 preserving a for resolve of b | |
167 preserving rev for resolve of rev | |
168 removing a | |
169 updating: a 1/2 files (50.00%) | |
170 picked tool 'python ../merge' for b (binary False symlink False) | |
171 merging a and b to b | |
172 my b@e300d1c794ec+ other b@bdb19105162a ancestor a@924404dff337 | |
173 premerge successful | |
174 updating: rev 2/2 files (100.00%) | |
175 picked tool 'python ../merge' for rev (binary False symlink False) | |
176 merging rev | |
177 my rev@e300d1c794ec+ other rev@bdb19105162a ancestor rev@924404dff337 | |
178 0 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
179 (branch merge, don't forget to commit) | |
180 -------------- | |
181 M b | |
182 a | |
183 -------------- | |
184 | |
185 $ tm "nm a b" "up a " " " "4 get remote change to b" | |
186 created new head | |
187 -------------- | |
188 test L:nm a b R:up a W: - 4 get remote change to b | |
189 -------------- | |
190 searching for copies back to rev 1 | |
191 unmatched files in local: | |
192 b | |
193 all copies found (* = to merge, ! = divergent): | |
194 b -> a * | |
195 checking for directory renames | |
196 resolving manifests | |
197 overwrite None partial False | |
198 ancestor 924404dff337 local 02963e448370+ remote f4db7e329e71 | |
199 b: local copied/moved to a -> m | |
200 rev: versions differ -> m | |
201 preserving b for resolve of b | |
202 preserving rev for resolve of rev | |
203 updating: b 1/2 files (50.00%) | |
204 picked tool 'python ../merge' for b (binary False symlink False) | |
205 merging b and a to b | |
206 my b@02963e448370+ other a@f4db7e329e71 ancestor a@924404dff337 | |
207 premerge successful | |
208 updating: rev 2/2 files (100.00%) | |
209 picked tool 'python ../merge' for rev (binary False symlink False) | |
210 merging rev | |
211 my rev@02963e448370+ other rev@f4db7e329e71 ancestor rev@924404dff337 | |
212 0 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
213 (branch merge, don't forget to commit) | |
214 -------------- | |
215 M b | |
216 a | |
217 -------------- | |
218 | |
219 $ tm " " "nc a b" " " "5 get b" | |
220 created new head | |
221 -------------- | |
222 test L: R:nc a b W: - 5 get b | |
223 -------------- | |
224 searching for copies back to rev 1 | |
225 unmatched files in other: | |
226 b | |
227 all copies found (* = to merge, ! = divergent): | |
228 b -> a | |
229 checking for directory renames | |
230 resolving manifests | |
231 overwrite None partial False | |
232 ancestor 924404dff337 local 94b33a1b7f2d+ remote 4ce40f5aca24 | |
233 rev: versions differ -> m | |
234 b: remote created -> g | |
235 preserving rev for resolve of rev | |
236 updating: b 1/2 files (50.00%) | |
237 getting b | |
238 updating: rev 2/2 files (100.00%) | |
239 picked tool 'python ../merge' for rev (binary False symlink False) | |
240 merging rev | |
241 my rev@94b33a1b7f2d+ other rev@4ce40f5aca24 ancestor rev@924404dff337 | |
242 1 files updated, 1 files merged, 0 files removed, 0 files unresolved | |
243 (branch merge, don't forget to commit) | |
244 -------------- | |
245 M b | |
246 C a | |
247 -------------- | |
248 | |
249 $ tm "nc a b" " " " " "6 nothing" | |
250 created new head | |
251 -------------- | |
252 test L:nc a b R: W: - 6 nothing | |
253 -------------- | |
254 searching for copies back to rev 1 | |
255 unmatched files in local: | |
256 b | |
257 all copies found (* = to merge, ! = divergent): | |
258 b -> a | |
259 checking for directory renames | |
260 resolving manifests | |
261 overwrite None partial False | |
262 ancestor 924404dff337 local 86a2aa42fc76+ remote 97c705ade336 | |
263 rev: versions differ -> m | |
264 preserving rev for resolve of rev | |
265 updating: rev 1/1 files (100.00%) | |
266 picked tool 'python ../merge' for rev (binary False symlink False) | |
267 merging rev | |
268 my rev@86a2aa42fc76+ other rev@97c705ade336 ancestor rev@924404dff337 | |
269 0 files updated, 1 files merged, 0 files removed, 0 files unresolved | |
270 (branch merge, don't forget to commit) | |
271 -------------- | |
272 C a | |
273 C b | |
274 -------------- | |
275 | |
276 $ tm " " "nm a b" " " "7 get b" | |
277 created new head | |
278 -------------- | |
279 test L: R:nm a b W: - 7 get b | |
280 -------------- | |
281 searching for copies back to rev 1 | |
282 unmatched files in other: | |
283 b | |
284 all copies found (* = to merge, ! = divergent): | |
285 b -> a | |
286 checking for directory renames | |
287 resolving manifests | |
288 overwrite None partial False | |
289 ancestor 924404dff337 local 94b33a1b7f2d+ remote bdb19105162a | |
290 a: other deleted -> r | |
291 rev: versions differ -> m | |
292 b: remote created -> g | |
293 preserving rev for resolve of rev | |
294 updating: a 1/3 files (33.33%) | |
295 removing a | |
296 updating: b 2/3 files (66.67%) | |
297 getting b | |
298 updating: rev 3/3 files (100.00%) | |
299 picked tool 'python ../merge' for rev (binary False symlink False) | |
300 merging rev | |
301 my rev@94b33a1b7f2d+ other rev@bdb19105162a ancestor rev@924404dff337 | |
302 1 files updated, 1 files merged, 1 files removed, 0 files unresolved | |
303 (branch merge, don't forget to commit) | |
304 -------------- | |
305 M b | |
306 -------------- | |
307 | |
308 $ tm "nm a b" " " " " "8 nothing" | |
309 created new head | |
310 -------------- | |
311 test L:nm a b R: W: - 8 nothing | |
312 -------------- | |
313 searching for copies back to rev 1 | |
314 unmatched files in local: | |
315 b | |
316 all copies found (* = to merge, ! = divergent): | |
317 b -> a | |
318 checking for directory renames | |
319 resolving manifests | |
320 overwrite None partial False | |
321 ancestor 924404dff337 local 02963e448370+ remote 97c705ade336 | |
322 rev: versions differ -> m | |
323 preserving rev for resolve of rev | |
324 updating: rev 1/1 files (100.00%) | |
325 picked tool 'python ../merge' for rev (binary False symlink False) | |
326 merging rev | |
327 my rev@02963e448370+ other rev@97c705ade336 ancestor rev@924404dff337 | |
328 0 files updated, 1 files merged, 0 files removed, 0 files unresolved | |
329 (branch merge, don't forget to commit) | |
330 -------------- | |
331 C b | |
332 -------------- | |
333 | |
334 $ tm "um a b" "um a b" " " "9 do merge with ancestor in a" | |
335 created new head | |
336 -------------- | |
337 test L:um a b R:um a b W: - 9 do merge with ancestor in a | |
338 -------------- | |
339 searching for copies back to rev 1 | |
340 resolving manifests | |
341 overwrite None partial False | |
342 ancestor 924404dff337 local 62e7bf090eba+ remote 49b6d8032493 | |
343 b: versions differ -> m | |
344 rev: versions differ -> m | |
345 preserving b for resolve of b | |
346 preserving rev for resolve of rev | |
347 updating: b 1/2 files (50.00%) | |
348 picked tool 'python ../merge' for b (binary False symlink False) | |
349 merging b | |
350 my b@62e7bf090eba+ other b@49b6d8032493 ancestor a@924404dff337 | |
351 updating: rev 2/2 files (100.00%) | |
352 picked tool 'python ../merge' for rev (binary False symlink False) | |
353 merging rev | |
354 my rev@62e7bf090eba+ other rev@49b6d8032493 ancestor rev@924404dff337 | |
355 0 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
356 (branch merge, don't forget to commit) | |
357 -------------- | |
358 M b | |
359 -------------- | |
360 | |
361 | |
362 m "um a c" "um x c" " " "10 do merge with no ancestor" | |
363 | |
364 $ tm "nm a b" "nm a c" " " "11 get c, keep b" | |
365 created new head | |
366 -------------- | |
367 test L:nm a b R:nm a c W: - 11 get c, keep b | |
368 -------------- | |
369 searching for copies back to rev 1 | |
370 unmatched files in local: | |
371 b | |
372 unmatched files in other: | |
373 c | |
374 all copies found (* = to merge, ! = divergent): | |
375 c -> a ! | |
376 b -> a ! | |
377 checking for directory renames | |
378 a: divergent renames -> dr | |
379 resolving manifests | |
380 overwrite None partial False | |
381 ancestor 924404dff337 local 02963e448370+ remote fe905ef2c33e | |
382 rev: versions differ -> m | |
383 c: remote created -> g | |
384 preserving rev for resolve of rev | |
385 updating: a 1/3 files (33.33%) | |
386 warning: detected divergent renames of a to: | |
387 b | |
388 c | |
389 updating: c 2/3 files (66.67%) | |
390 getting c | |
391 updating: rev 3/3 files (100.00%) | |
392 picked tool 'python ../merge' for rev (binary False symlink False) | |
393 merging rev | |
394 my rev@02963e448370+ other rev@fe905ef2c33e ancestor rev@924404dff337 | |
395 1 files updated, 1 files merged, 0 files removed, 0 files unresolved | |
396 (branch merge, don't forget to commit) | |
397 -------------- | |
398 M c | |
399 C b | |
400 -------------- | |
401 | |
402 $ tm "nc a b" "up b " " " "12 merge b no ancestor" | |
403 created new head | |
404 -------------- | |
405 test L:nc a b R:up b W: - 12 merge b no ancestor | |
406 -------------- | |
407 searching for copies back to rev 1 | |
408 resolving manifests | |
409 overwrite None partial False | |
410 ancestor 924404dff337 local 86a2aa42fc76+ remote af30c7647fc7 | |
411 b: versions differ -> m | |
412 rev: versions differ -> m | |
413 preserving b for resolve of b | |
414 preserving rev for resolve of rev | |
415 updating: b 1/2 files (50.00%) | |
416 picked tool 'python ../merge' for b (binary False symlink False) | |
417 merging b | |
418 my b@86a2aa42fc76+ other b@af30c7647fc7 ancestor b@000000000000 | |
419 updating: rev 2/2 files (100.00%) | |
420 picked tool 'python ../merge' for rev (binary False symlink False) | |
421 merging rev | |
422 my rev@86a2aa42fc76+ other rev@af30c7647fc7 ancestor rev@924404dff337 | |
423 0 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
424 (branch merge, don't forget to commit) | |
425 -------------- | |
426 M b | |
427 C a | |
428 -------------- | |
429 | |
430 $ tm "up b " "nm a b" " " "13 merge b no ancestor" | |
431 created new head | |
432 -------------- | |
433 test L:up b R:nm a b W: - 13 merge b no ancestor | |
434 -------------- | |
435 searching for copies back to rev 1 | |
436 resolving manifests | |
437 overwrite None partial False | |
438 ancestor 924404dff337 local 59318016310c+ remote bdb19105162a | |
439 a: other deleted -> r | |
440 b: versions differ -> m | |
441 rev: versions differ -> m | |
442 preserving b for resolve of b | |
443 preserving rev for resolve of rev | |
444 updating: a 1/3 files (33.33%) | |
445 removing a | |
446 updating: b 2/3 files (66.67%) | |
447 picked tool 'python ../merge' for b (binary False symlink False) | |
448 merging b | |
449 my b@59318016310c+ other b@bdb19105162a ancestor b@000000000000 | |
450 updating: rev 3/3 files (100.00%) | |
451 picked tool 'python ../merge' for rev (binary False symlink False) | |
452 merging rev | |
453 my rev@59318016310c+ other rev@bdb19105162a ancestor rev@924404dff337 | |
454 0 files updated, 2 files merged, 1 files removed, 0 files unresolved | |
455 (branch merge, don't forget to commit) | |
456 -------------- | |
457 M b | |
458 -------------- | |
459 | |
460 $ tm "nc a b" "up a b" " " "14 merge b no ancestor" | |
461 created new head | |
462 -------------- | |
463 test L:nc a b R:up a b W: - 14 merge b no ancestor | |
464 -------------- | |
465 searching for copies back to rev 1 | |
466 resolving manifests | |
467 overwrite None partial False | |
468 ancestor 924404dff337 local 86a2aa42fc76+ remote 8dbce441892a | |
469 a: remote is newer -> g | |
470 b: versions differ -> m | |
471 rev: versions differ -> m | |
472 preserving b for resolve of b | |
473 preserving rev for resolve of rev | |
474 updating: a 1/3 files (33.33%) | |
475 getting a | |
476 updating: b 2/3 files (66.67%) | |
477 picked tool 'python ../merge' for b (binary False symlink False) | |
478 merging b | |
479 my b@86a2aa42fc76+ other b@8dbce441892a ancestor b@000000000000 | |
480 updating: rev 3/3 files (100.00%) | |
481 picked tool 'python ../merge' for rev (binary False symlink False) | |
482 merging rev | |
483 my rev@86a2aa42fc76+ other rev@8dbce441892a ancestor rev@924404dff337 | |
484 1 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
485 (branch merge, don't forget to commit) | |
486 -------------- | |
487 M a | |
488 M b | |
489 -------------- | |
490 | |
491 $ tm "up b " "nm a b" " " "15 merge b no ancestor, remove a" | |
492 created new head | |
493 -------------- | |
494 test L:up b R:nm a b W: - 15 merge b no ancestor, remove a | |
495 -------------- | |
496 searching for copies back to rev 1 | |
497 resolving manifests | |
498 overwrite None partial False | |
499 ancestor 924404dff337 local 59318016310c+ remote bdb19105162a | |
500 a: other deleted -> r | |
501 b: versions differ -> m | |
502 rev: versions differ -> m | |
503 preserving b for resolve of b | |
504 preserving rev for resolve of rev | |
505 updating: a 1/3 files (33.33%) | |
506 removing a | |
507 updating: b 2/3 files (66.67%) | |
508 picked tool 'python ../merge' for b (binary False symlink False) | |
509 merging b | |
510 my b@59318016310c+ other b@bdb19105162a ancestor b@000000000000 | |
511 updating: rev 3/3 files (100.00%) | |
512 picked tool 'python ../merge' for rev (binary False symlink False) | |
513 merging rev | |
514 my rev@59318016310c+ other rev@bdb19105162a ancestor rev@924404dff337 | |
515 0 files updated, 2 files merged, 1 files removed, 0 files unresolved | |
516 (branch merge, don't forget to commit) | |
517 -------------- | |
518 M b | |
519 -------------- | |
520 | |
521 $ tm "nc a b" "up a b" " " "16 get a, merge b no ancestor" | |
522 created new head | |
523 -------------- | |
524 test L:nc a b R:up a b W: - 16 get a, merge b no ancestor | |
525 -------------- | |
526 searching for copies back to rev 1 | |
527 resolving manifests | |
528 overwrite None partial False | |
529 ancestor 924404dff337 local 86a2aa42fc76+ remote 8dbce441892a | |
530 a: remote is newer -> g | |
531 b: versions differ -> m | |
532 rev: versions differ -> m | |
533 preserving b for resolve of b | |
534 preserving rev for resolve of rev | |
535 updating: a 1/3 files (33.33%) | |
536 getting a | |
537 updating: b 2/3 files (66.67%) | |
538 picked tool 'python ../merge' for b (binary False symlink False) | |
539 merging b | |
540 my b@86a2aa42fc76+ other b@8dbce441892a ancestor b@000000000000 | |
541 updating: rev 3/3 files (100.00%) | |
542 picked tool 'python ../merge' for rev (binary False symlink False) | |
543 merging rev | |
544 my rev@86a2aa42fc76+ other rev@8dbce441892a ancestor rev@924404dff337 | |
545 1 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
546 (branch merge, don't forget to commit) | |
547 -------------- | |
548 M a | |
549 M b | |
550 -------------- | |
551 | |
552 $ tm "up a b" "nc a b" " " "17 keep a, merge b no ancestor" | |
553 created new head | |
554 -------------- | |
555 test L:up a b R:nc a b W: - 17 keep a, merge b no ancestor | |
556 -------------- | |
557 searching for copies back to rev 1 | |
558 resolving manifests | |
559 overwrite None partial False | |
560 ancestor 924404dff337 local 0b76e65c8289+ remote 4ce40f5aca24 | |
561 b: versions differ -> m | |
562 rev: versions differ -> m | |
563 preserving b for resolve of b | |
564 preserving rev for resolve of rev | |
565 updating: b 1/2 files (50.00%) | |
566 picked tool 'python ../merge' for b (binary False symlink False) | |
567 merging b | |
568 my b@0b76e65c8289+ other b@4ce40f5aca24 ancestor b@000000000000 | |
569 updating: rev 2/2 files (100.00%) | |
570 picked tool 'python ../merge' for rev (binary False symlink False) | |
571 merging rev | |
572 my rev@0b76e65c8289+ other rev@4ce40f5aca24 ancestor rev@924404dff337 | |
573 0 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
574 (branch merge, don't forget to commit) | |
575 -------------- | |
576 M b | |
577 C a | |
578 -------------- | |
579 | |
580 $ tm "nm a b" "up a b" " " "18 merge b no ancestor" | |
581 created new head | |
582 -------------- | |
583 test L:nm a b R:up a b W: - 18 merge b no ancestor | |
584 -------------- | |
585 searching for copies back to rev 1 | |
586 resolving manifests | |
587 overwrite None partial False | |
588 ancestor 924404dff337 local 02963e448370+ remote 8dbce441892a | |
589 b: versions differ -> m | |
590 rev: versions differ -> m | |
591 remote changed a which local deleted | |
592 use (c)hanged version or leave (d)eleted? c | |
593 a: prompt recreating -> g | |
594 preserving b for resolve of b | |
595 preserving rev for resolve of rev | |
596 updating: a 1/3 files (33.33%) | |
597 getting a | |
598 updating: b 2/3 files (66.67%) | |
599 picked tool 'python ../merge' for b (binary False symlink False) | |
600 merging b | |
601 my b@02963e448370+ other b@8dbce441892a ancestor b@000000000000 | |
602 updating: rev 3/3 files (100.00%) | |
603 picked tool 'python ../merge' for rev (binary False symlink False) | |
604 merging rev | |
605 my rev@02963e448370+ other rev@8dbce441892a ancestor rev@924404dff337 | |
606 1 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
607 (branch merge, don't forget to commit) | |
608 -------------- | |
609 M a | |
610 M b | |
611 -------------- | |
612 | |
613 $ tm "up a b" "nm a b" " " "19 merge b no ancestor, prompt remove a" | |
614 created new head | |
615 -------------- | |
616 test L:up a b R:nm a b W: - 19 merge b no ancestor, prompt remove a | |
617 -------------- | |
618 searching for copies back to rev 1 | |
619 resolving manifests | |
620 overwrite None partial False | |
621 ancestor 924404dff337 local 0b76e65c8289+ remote bdb19105162a | |
622 local changed a which remote deleted | |
623 use (c)hanged version or (d)elete? c | |
624 a: prompt keep -> a | |
625 b: versions differ -> m | |
626 rev: versions differ -> m | |
627 preserving b for resolve of b | |
628 preserving rev for resolve of rev | |
629 updating: a 1/3 files (33.33%) | |
630 updating: b 2/3 files (66.67%) | |
631 picked tool 'python ../merge' for b (binary False symlink False) | |
632 merging b | |
633 my b@0b76e65c8289+ other b@bdb19105162a ancestor b@000000000000 | |
634 updating: rev 3/3 files (100.00%) | |
635 picked tool 'python ../merge' for rev (binary False symlink False) | |
636 merging rev | |
637 my rev@0b76e65c8289+ other rev@bdb19105162a ancestor rev@924404dff337 | |
638 0 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
639 (branch merge, don't forget to commit) | |
640 -------------- | |
641 M b | |
642 C a | |
643 -------------- | |
644 | |
645 $ tm "up a " "um a b" " " "20 merge a and b to b, remove a" | |
646 created new head | |
647 -------------- | |
648 test L:up a R:um a b W: - 20 merge a and b to b, remove a | |
649 -------------- | |
650 searching for copies back to rev 1 | |
651 unmatched files in other: | |
652 b | |
653 all copies found (* = to merge, ! = divergent): | |
654 b -> a * | |
655 checking for directory renames | |
656 resolving manifests | |
657 overwrite None partial False | |
658 ancestor 924404dff337 local e300d1c794ec+ remote 49b6d8032493 | |
659 rev: versions differ -> m | |
660 a: remote moved to b -> m | |
661 preserving a for resolve of b | |
662 preserving rev for resolve of rev | |
663 removing a | |
664 updating: a 1/2 files (50.00%) | |
665 picked tool 'python ../merge' for b (binary False symlink False) | |
666 merging a and b to b | |
667 my b@e300d1c794ec+ other b@49b6d8032493 ancestor a@924404dff337 | |
668 updating: rev 2/2 files (100.00%) | |
669 picked tool 'python ../merge' for rev (binary False symlink False) | |
670 merging rev | |
671 my rev@e300d1c794ec+ other rev@49b6d8032493 ancestor rev@924404dff337 | |
672 0 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
673 (branch merge, don't forget to commit) | |
674 -------------- | |
675 M b | |
676 a | |
677 -------------- | |
678 | |
679 $ tm "um a b" "up a " " " "21 merge a and b to b" | |
680 created new head | |
681 -------------- | |
682 test L:um a b R:up a W: - 21 merge a and b to b | |
683 -------------- | |
684 searching for copies back to rev 1 | |
685 unmatched files in local: | |
686 b | |
687 all copies found (* = to merge, ! = divergent): | |
688 b -> a * | |
689 checking for directory renames | |
690 resolving manifests | |
691 overwrite None partial False | |
692 ancestor 924404dff337 local 62e7bf090eba+ remote f4db7e329e71 | |
693 b: local copied/moved to a -> m | |
694 rev: versions differ -> m | |
695 preserving b for resolve of b | |
696 preserving rev for resolve of rev | |
697 updating: b 1/2 files (50.00%) | |
698 picked tool 'python ../merge' for b (binary False symlink False) | |
699 merging b and a to b | |
700 my b@62e7bf090eba+ other a@f4db7e329e71 ancestor a@924404dff337 | |
701 updating: rev 2/2 files (100.00%) | |
702 picked tool 'python ../merge' for rev (binary False symlink False) | |
703 merging rev | |
704 my rev@62e7bf090eba+ other rev@f4db7e329e71 ancestor rev@924404dff337 | |
705 0 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
706 (branch merge, don't forget to commit) | |
707 -------------- | |
708 M b | |
709 a | |
710 -------------- | |
711 | |
712 | |
713 m "nm a b" "um x a" " " "22 get a, keep b" | |
714 | |
715 $ tm "nm a b" "up a c" " " "23 get c, keep b" | |
716 created new head | |
717 -------------- | |
718 test L:nm a b R:up a c W: - 23 get c, keep b | |
719 -------------- | |
720 searching for copies back to rev 1 | |
721 unmatched files in local: | |
722 b | |
723 unmatched files in other: | |
724 c | |
725 all copies found (* = to merge, ! = divergent): | |
726 b -> a * | |
727 checking for directory renames | |
728 resolving manifests | |
729 overwrite None partial False | |
730 ancestor 924404dff337 local 02963e448370+ remote 2b958612230f | |
731 b: local copied/moved to a -> m | |
732 rev: versions differ -> m | |
733 c: remote created -> g | |
734 preserving b for resolve of b | |
735 preserving rev for resolve of rev | |
736 updating: b 1/3 files (33.33%) | |
737 picked tool 'python ../merge' for b (binary False symlink False) | |
738 merging b and a to b | |
739 my b@02963e448370+ other a@2b958612230f ancestor a@924404dff337 | |
740 premerge successful | |
741 updating: c 2/3 files (66.67%) | |
742 getting c | |
743 updating: rev 3/3 files (100.00%) | |
744 picked tool 'python ../merge' for rev (binary False symlink False) | |
745 merging rev | |
746 my rev@02963e448370+ other rev@2b958612230f ancestor rev@924404dff337 | |
747 1 files updated, 2 files merged, 0 files removed, 0 files unresolved | |
748 (branch merge, don't forget to commit) | |
749 -------------- | |
750 M b | |
751 a | |
752 M c | |
753 -------------- | |
754 |