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