1553 else: |
1553 else: |
1554 # Allow jumping branches if clean and specific rev given |
1554 # Allow jumping branches if clean and specific rev given |
1555 pas = [p1] |
1555 pas = [p1] |
1556 |
1556 |
1557 # deprecated config: merge.followcopies |
1557 # deprecated config: merge.followcopies |
1558 followcopies = False |
1558 followcopies = repo.ui.configbool('merge', 'followcopies', True) |
1559 if overwrite: |
1559 if overwrite: |
1560 pas = [wc] |
1560 pas = [wc] |
|
1561 followcopies = False |
1561 elif pas == [p2]: # backwards |
1562 elif pas == [p2]: # backwards |
1562 pas = [wc.p1()] |
1563 pas = [p1] |
1563 elif not branchmerge and not wc.dirty(missing=True): |
1564 elif not pas[0]: |
1564 pass |
1565 followcopies = False |
1565 elif pas[0] and repo.ui.configbool('merge', 'followcopies', True): |
1566 if not branchmerge and not wc.dirty(missing=True): |
1566 followcopies = True |
1567 followcopies = False |
1567 |
1568 |
1568 ### calculate phase |
1569 ### calculate phase |
1569 actionbyfile, diverge, renamedelete = calculateupdates( |
1570 actionbyfile, diverge, renamedelete = calculateupdates( |
1570 repo, wc, p2, pas, branchmerge, force, mergeancestor, |
1571 repo, wc, p2, pas, branchmerge, force, mergeancestor, |
1571 followcopies, matcher=matcher, mergeforce=mergeforce) |
1572 followcopies, matcher=matcher, mergeforce=mergeforce) |