--- a/mercurial/merge.py Fri Mar 23 00:12:28 2007 -0500
+++ b/mercurial/merge.py Thu Apr 05 16:43:18 2007 -0500
@@ -129,15 +129,15 @@
'''check possible copies for filectx c'''
for of in findold(c):
if of not in man:
- return
+ continue
c2 = ctx(of, man[of])
ca = c.ancestor(c2)
if not ca: # unrelated
- return
+ continue
if ca.path() == c.path() or ca.path() == c2.path():
fullcopy[c.path()] = of
- if c == ca or c2 == ca: # no merge needed, ignore copy
- return
+ if c == ca and c2 == ca: # no merge needed, ignore copy
+ continue
copy[c.path()] = of
def dirs(files):
--- a/tests/test-merge-local.out Fri Mar 23 00:12:28 2007 -0500
+++ b/tests/test-merge-local.out Thu Apr 05 16:43:18 2007 -0500
@@ -21,7 +21,7 @@
merging zzz1_merge_ok failed!
merging zzz2_merge_bad
merging zzz2_merge_bad failed!
-3 files updated, 0 files merged, 2 files removed, 2 files unresolved
+3 files updated, 0 files merged, 1 files removed, 2 files unresolved
There are unresolved merges with locally modified files.
You can redo the full merge using:
hg update 0
@@ -40,7 +40,7 @@
merging zzz1_merge_ok
merging zzz2_merge_bad
merging zzz2_merge_bad failed!
-3 files updated, 1 files merged, 2 files removed, 1 files unresolved
+3 files updated, 1 files merged, 1 files removed, 1 files unresolved
There are unresolved merges with locally modified files.
You can finish the partial merge using:
hg update 0
@@ -59,7 +59,7 @@
M zzz2_merge_bad
# local merge without conflicts
merging zzz1_merge_ok
-4 files updated, 1 files merged, 2 files removed, 0 files unresolved
+4 files updated, 1 files merged, 1 files removed, 0 files unresolved
--- a/zzz1_merge_ok
+++ b/zzz1_merge_ok
+new last line
--- a/tests/test-merge8.out Fri Mar 23 00:12:28 2007 -0500
+++ b/tests/test-merge8.out Thu Apr 05 16:43:18 2007 -0500
@@ -6,4 +6,5 @@
adding file changes
added 2 changesets with 2 changes to 1 files
(run 'hg update' to get a working copy)
-1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+merging a and b
+0 files updated, 1 files merged, 0 files removed, 0 files unresolved
--- a/tests/test-rename-dir-merge.out Fri Mar 23 00:12:28 2007 -0500
+++ b/tests/test-rename-dir-merge.out Thu Apr 05 16:43:18 2007 -0500
@@ -10,33 +10,39 @@
overwrite None partial False
ancestor f9b20c0d4c51 local ce36d17b18fb+ remote 55119e611c80
a/c: remote renamed directory to b/c -> d
- a/b: other deleted -> r
- a/a: other deleted -> r
- b/a: remote created -> g
- b/b: remote created -> g
+ a/a: remote moved to b/a -> m
+ a/b: remote moved to b/b -> m
+copying a/a to b/a
removing a/a
+copying a/b to b/b
removing a/b
moving a/c to b/c
-getting b/a
-getting b/b
-3 files updated, 0 files merged, 2 files removed, 0 files unresolved
+3 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
a/* b/a b/b b/c
M b/a
+ a/a
M b/b
+ a/b
A b/c
a/c
R a/a
R a/b
R a/c
-0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+2 files updated, 0 files merged, 1 files removed, 0 files unresolved
resolving manifests
overwrite None partial False
ancestor f9b20c0d4c51 local 55119e611c80+ remote ce36d17b18fb
+ b/a: local moved to a/a -> m
+ b/b: local moved to a/b -> m
None: local renamed directory to b/c -> d
getting a/c to b/c
-1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+3 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
a/* b/a b/b b/c
+M b/a
+ a/a
+M b/b
+ a/b
A b/c
a/c
--- a/tests/test-rename-dir-merge2.out Fri Mar 23 00:12:28 2007 -0500
+++ b/tests/test-rename-dir-merge2.out Thu Apr 05 16:43:18 2007 -0500
@@ -10,9 +10,11 @@
adding file changes
added 1 changesets with 1 changes to 1 files (+1 heads)
(run 'hg heads' to see heads, 'hg merge' to merge)
-2 files updated, 0 files merged, 1 files removed, 0 files unresolved
+merging a/f and b/f
+1 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
M b/f
+ a/f
A b/aa/g
a/aa/g
R a/aa/g
--- a/tests/test-rename-merge2.out Fri Mar 23 00:12:28 2007 -0500
+++ b/tests/test-rename-merge2.out Thu Apr 05 16:43:18 2007 -0500
@@ -88,14 +88,15 @@
overwrite None partial False
ancestor 924404dff337 local 94b33a1b7f2d+ remote 735846fee2d7
rev: versions differ -> m
- b: remote created -> g
-getting b
+ a: remote copied to b -> m
+copying a to b
merging rev
my rev@94b33a1b7f2d+ other rev@735846fee2d7 ancestor rev@924404dff337
1 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
--------------
M b
+ a
C a
--------------
@@ -105,14 +106,16 @@
resolving manifests
overwrite None partial False
ancestor 924404dff337 local ac809aeed39a+ remote 97c705ade336
+ b: local copied to a -> m
rev: versions differ -> m
merging rev
my rev@ac809aeed39a+ other rev@97c705ade336 ancestor rev@924404dff337
-0 files updated, 1 files merged, 0 files removed, 0 files unresolved
+1 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
--------------
+M b
+ a
C a
-C b
--------------
--------------
@@ -121,17 +124,17 @@
resolving manifests
overwrite None partial False
ancestor 924404dff337 local 94b33a1b7f2d+ remote e03727d2d66b
- a: other deleted -> r
rev: versions differ -> m
- b: remote created -> g
+ a: remote moved to b -> m
+copying a to b
removing a
-getting b
merging rev
my rev@94b33a1b7f2d+ other rev@e03727d2d66b ancestor rev@924404dff337
-1 files updated, 1 files merged, 1 files removed, 0 files unresolved
+1 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
--------------
M b
+ a
--------------
--------------
@@ -140,13 +143,15 @@
resolving manifests
overwrite None partial False
ancestor 924404dff337 local ecf3cb2a4219+ remote 97c705ade336
+ b: local moved to a -> m
rev: versions differ -> m
merging rev
my rev@ecf3cb2a4219+ other rev@97c705ade336 ancestor rev@924404dff337
-0 files updated, 1 files merged, 0 files removed, 0 files unresolved
+1 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
--------------
-C b
+M b
+ a
--------------
--------------