Mercurial > hg
comparison tests/test-rename-merge2.t @ 27599:ad5966de3c9a
filemerge: default change/delete conflicts to 'leave unresolved' (BC)
It makes far more sense to leave these conflicts unresolved and kick back to
the user than to just assume that the local version be chosen. There are almost
certainly buggy scripts and applications using Mercurial in the wild that do
merges or rebases non-interactively, and then assume that if the operation
succeeded there's nothing the user needs to pay attention to.
(This wasn't possible earlier because there was no way to re-resolve
change/delete conflicts -- but now it is.)
author | Siddharth Agarwal <sid0@fb.com> |
---|---|
date | Wed, 23 Dec 2015 12:51:45 -0800 |
parents | 27b89a0957ec |
children | 564a354f7f35 |
comparison
equal
deleted
inserted
replaced
27598:97e39f70fb47 | 27599:ad5966de3c9a |
---|---|
682 preserving b for resolve of b | 682 preserving b for resolve of b |
683 preserving rev for resolve of rev | 683 preserving rev for resolve of rev |
684 a: prompt deleted/changed -> m (premerge) | 684 a: prompt deleted/changed -> m (premerge) |
685 picked tool ':prompt' for a (binary False symlink False changedelete True) | 685 picked tool ':prompt' for a (binary False symlink False changedelete True) |
686 remote changed a which local deleted | 686 remote changed a which local deleted |
687 use (c)hanged version, leave (d)eleted, or leave (u)nresolved? c | 687 use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u |
688 b: both created -> m (premerge) | 688 b: both created -> m (premerge) |
689 picked tool 'python ../merge' for b (binary False symlink False changedelete False) | 689 picked tool 'python ../merge' for b (binary False symlink False changedelete False) |
690 merging b | 690 merging b |
691 my b@02963e448370+ other b@8dbce441892a ancestor b@000000000000 | 691 my b@02963e448370+ other b@8dbce441892a ancestor b@000000000000 |
692 rev: versions differ -> m (premerge) | 692 rev: versions differ -> m (premerge) |
701 rev: versions differ -> m (merge) | 701 rev: versions differ -> m (merge) |
702 picked tool 'python ../merge' for rev (binary False symlink False changedelete False) | 702 picked tool 'python ../merge' for rev (binary False symlink False changedelete False) |
703 my rev@02963e448370+ other rev@8dbce441892a ancestor rev@924404dff337 | 703 my rev@02963e448370+ other rev@8dbce441892a ancestor rev@924404dff337 |
704 launching merge tool: python ../merge *$TESTTMP/t/t/rev* * * (glob) | 704 launching merge tool: python ../merge *$TESTTMP/t/t/rev* * * (glob) |
705 merge tool returned: 0 | 705 merge tool returned: 0 |
706 0 files updated, 3 files merged, 0 files removed, 0 files unresolved | 706 0 files updated, 2 files merged, 0 files removed, 1 files unresolved |
707 (branch merge, don't forget to commit) | 707 use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon |
708 -------------- | 708 -------------- |
709 M a | 709 M a |
710 M b | 710 M b |
711 abort: unresolved merge conflicts (see "hg help resolve") | |
711 -------------- | 712 -------------- |
712 | 713 |
713 $ tm "up a b" "nm a b" " " "19 merge b no ancestor, prompt remove a" | 714 $ tm "up a b" "nm a b" " " "19 merge b no ancestor, prompt remove a" |
714 created new head | 715 created new head |
715 -------------- | 716 -------------- |
725 preserving b for resolve of b | 726 preserving b for resolve of b |
726 preserving rev for resolve of rev | 727 preserving rev for resolve of rev |
727 a: prompt changed/deleted -> m (premerge) | 728 a: prompt changed/deleted -> m (premerge) |
728 picked tool ':prompt' for a (binary False symlink False changedelete True) | 729 picked tool ':prompt' for a (binary False symlink False changedelete True) |
729 local changed a which remote deleted | 730 local changed a which remote deleted |
730 use (c)hanged version, (d)elete, or leave (u)nresolved? c | 731 use (c)hanged version, (d)elete, or leave (u)nresolved? u |
731 b: both created -> m (premerge) | 732 b: both created -> m (premerge) |
732 picked tool 'python ../merge' for b (binary False symlink False changedelete False) | 733 picked tool 'python ../merge' for b (binary False symlink False changedelete False) |
733 merging b | 734 merging b |
734 my b@0b76e65c8289+ other b@bdb19105162a ancestor b@000000000000 | 735 my b@0b76e65c8289+ other b@bdb19105162a ancestor b@000000000000 |
735 rev: versions differ -> m (premerge) | 736 rev: versions differ -> m (premerge) |
744 rev: versions differ -> m (merge) | 745 rev: versions differ -> m (merge) |
745 picked tool 'python ../merge' for rev (binary False symlink False changedelete False) | 746 picked tool 'python ../merge' for rev (binary False symlink False changedelete False) |
746 my rev@0b76e65c8289+ other rev@bdb19105162a ancestor rev@924404dff337 | 747 my rev@0b76e65c8289+ other rev@bdb19105162a ancestor rev@924404dff337 |
747 launching merge tool: python ../merge *$TESTTMP/t/t/rev* * * (glob) | 748 launching merge tool: python ../merge *$TESTTMP/t/t/rev* * * (glob) |
748 merge tool returned: 0 | 749 merge tool returned: 0 |
749 0 files updated, 3 files merged, 0 files removed, 0 files unresolved | 750 0 files updated, 2 files merged, 0 files removed, 1 files unresolved |
750 (branch merge, don't forget to commit) | 751 use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon |
751 -------------- | 752 -------------- |
752 M b | 753 M b |
753 C a | 754 C a |
755 abort: unresolved merge conflicts (see "hg help resolve") | |
754 -------------- | 756 -------------- |
755 | 757 |
756 $ tm "up a " "um a b" " " "20 merge a and b to b, remove a" | 758 $ tm "up a " "um a b" " " "20 merge a and b to b, remove a" |
757 created new head | 759 created new head |
758 -------------- | 760 -------------- |