equal
deleted
inserted
replaced
426 mode = b'merge' |
426 mode = b'merge' |
427 if premerge == b'keep-mergediff': |
427 if premerge == b'keep-mergediff': |
428 mode = b'mergediff' |
428 mode = b'mergediff' |
429 elif premerge == b'keep-merge3': |
429 elif premerge == b'keep-merge3': |
430 mode = b'merge3' |
430 mode = b'merge3' |
|
431 local = simplemerge.MergeInput(fcd, labels[0]) |
|
432 other = simplemerge.MergeInput(fco, labels[1]) |
|
433 base = simplemerge.MergeInput(fca, labels[2]) |
431 r = simplemerge.simplemerge( |
434 r = simplemerge.simplemerge( |
432 ui, fcd, fca, fco, quiet=True, label=labels, mode=mode |
435 ui, local, base, other, quiet=True, mode=mode |
433 ) |
436 ) |
434 if not r: |
437 if not r: |
435 ui.debug(b" premerge successful\n") |
438 ui.debug(b" premerge successful\n") |
436 return 0 |
439 return 0 |
437 if premerge not in validkeep: |
440 if premerge not in validkeep: |
467 files. It will fail if there are any conflicts and leave markers in |
470 files. It will fail if there are any conflicts and leave markers in |
468 the partially merged file. Markers will have two sections, one for each side |
471 the partially merged file. Markers will have two sections, one for each side |
469 of merge, unless mode equals 'union' which suppresses the markers.""" |
472 of merge, unless mode equals 'union' which suppresses the markers.""" |
470 ui = repo.ui |
473 ui = repo.ui |
471 |
474 |
472 r = simplemerge.simplemerge(ui, fcd, fca, fco, label=labels, mode=mode) |
475 local = simplemerge.MergeInput(fcd) |
|
476 if len(labels) > 0: |
|
477 local.label = labels[0] |
|
478 other = simplemerge.MergeInput(fco) |
|
479 if len(labels) > 1: |
|
480 other.label = labels[1] |
|
481 base = simplemerge.MergeInput(fca) |
|
482 if len(labels) > 2: |
|
483 base.label = labels[2] |
|
484 r = simplemerge.simplemerge(ui, local, base, other, mode=mode) |
473 return True, r, False |
485 return True, r, False |
474 |
486 |
475 |
487 |
476 @internaltool( |
488 @internaltool( |
477 b'union', |
489 b'union', |