copies: print debug information about copies per side/branch
Differential Revision: https://phab.mercurial-scm.org/D7987
--- a/mercurial/copies.py Wed Jan 22 15:31:17 2020 -0800
+++ b/mercurial/copies.py Fri Jan 24 10:39:55 2020 -0800
@@ -630,9 +630,6 @@
if u2:
repo.ui.debug(b"%s:\n %s\n" % (header % b'other', b"\n ".join(u2)))
- fullcopy = copies1.copy()
- fullcopy.update(copies2)
-
if repo.ui.debugflag:
renamedeleteset = set()
divergeset = set()
@@ -647,17 +644,21 @@
b" all copies found (* = to merge, ! = divergent, "
b"% = renamed and deleted):\n"
)
- for f in sorted(fullcopy):
- note = b""
- if f in copy1 or f in copy2:
- note += b"*"
- if f in divergeset:
- note += b"!"
- if f in renamedeleteset:
- note += b"%"
- repo.ui.debug(
- b" src: '%s' -> dst: '%s' %s\n" % (fullcopy[f], f, note)
- )
+ for side, copies in ((b"local", copies1), (b"remote", copies2)):
+ if not copies:
+ continue
+ repo.ui.debug(b" on %s side:\n" % side)
+ for f in sorted(copies):
+ note = b""
+ if f in copy1 or f in copy2:
+ note += b"*"
+ if f in divergeset:
+ note += b"!"
+ if f in renamedeleteset:
+ note += b"%"
+ repo.ui.debug(
+ b" src: '%s' -> dst: '%s' %s\n" % (copies[f], f, note)
+ )
del renamedeleteset
del divergeset
--- a/tests/test-copy-move-merge.t Wed Jan 22 15:31:17 2020 -0800
+++ b/tests/test-copy-move-merge.t Fri Jan 24 10:39:55 2020 -0800
@@ -27,8 +27,9 @@
b
c
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
- src: 'a' -> dst: 'c' *
+ on remote side:
+ src: 'a' -> dst: 'b' *
+ src: 'a' -> dst: 'c' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
--- a/tests/test-double-merge.t Wed Jan 22 15:31:17 2020 -0800
+++ b/tests/test-double-merge.t Fri Jan 24 10:39:55 2020 -0800
@@ -29,7 +29,8 @@
unmatched files in other:
bar
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'foo' -> dst: 'bar' *
+ on remote side:
+ src: 'foo' -> dst: 'bar' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
--- a/tests/test-graft.t Wed Jan 22 15:31:17 2020 -0800
+++ b/tests/test-graft.t Fri Jan 24 10:39:55 2020 -0800
@@ -204,7 +204,8 @@
unmatched files in local:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on local side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: True, partial: False
@@ -223,7 +224,8 @@
updating the branch cache
grafting 5:97f8bfe72746 "5"
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'c' -> dst: 'b'
+ on local side:
+ src: 'c' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: True, partial: False
@@ -239,7 +241,8 @@
scanning for duplicate grafts
grafting 4:9c233e8e184d "4"
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'c' -> dst: 'b'
+ on local side:
+ src: 'c' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: True, partial: False
@@ -746,7 +749,10 @@
scanning for duplicate grafts
grafting 13:7a4785234d87 "2"
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on local side:
+ src: 'a' -> dst: 'b' *
+ on remote side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: True, partial: False
--- a/tests/test-issue672.t Wed Jan 22 15:31:17 2020 -0800
+++ b/tests/test-issue672.t Fri Jan 24 10:39:55 2020 -0800
@@ -28,7 +28,8 @@
unmatched files in other:
1a
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: '1' -> dst: '1a'
+ on remote side:
+ src: '1' -> dst: '1a'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -56,7 +57,8 @@
unmatched files in local:
1a
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: '1' -> dst: '1a' *
+ on local side:
+ src: '1' -> dst: '1a' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -78,7 +80,8 @@
unmatched files in other:
1a
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: '1' -> dst: '1a' *
+ on remote side:
+ src: '1' -> dst: '1a' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
--- a/tests/test-merge-criss-cross.t Wed Jan 22 15:31:17 2020 -0800
+++ b/tests/test-merge-criss-cross.t Fri Jan 24 10:39:55 2020 -0800
@@ -419,7 +419,8 @@
unmatched files in other:
d2/b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'd1/b' -> dst: 'd2/b'
+ on remote side:
+ src: 'd1/b' -> dst: 'd2/b'
checking for directory renames
discovered dir src: 'd1/' -> dst: 'd2/'
resolving manifests
--- a/tests/test-rename-dir-merge.t Wed Jan 22 15:31:17 2020 -0800
+++ b/tests/test-rename-dir-merge.t Fri Jan 24 10:39:55 2020 -0800
@@ -30,8 +30,9 @@
b/a
b/b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a/a' -> dst: 'b/a'
- src: 'a/b' -> dst: 'b/b'
+ on remote side:
+ src: 'a/a' -> dst: 'b/a'
+ src: 'a/b' -> dst: 'b/b'
checking for directory renames
discovered dir src: 'a/' -> dst: 'b/'
pending file src: 'a/c' -> dst: 'b/c'
@@ -75,8 +76,9 @@
unmatched files in other:
a/c
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a/a' -> dst: 'b/a'
- src: 'a/b' -> dst: 'b/b'
+ on local side:
+ src: 'a/a' -> dst: 'b/a'
+ src: 'a/b' -> dst: 'b/b'
checking for directory renames
discovered dir src: 'a/' -> dst: 'b/'
pending file src: 'a/c' -> dst: 'b/c'
--- a/tests/test-rename-merge1.t Wed Jan 22 15:31:17 2020 -0800
+++ b/tests/test-rename-merge1.t Fri Jan 24 10:39:55 2020 -0800
@@ -28,9 +28,11 @@
b
b2
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
- src: 'a2' -> dst: 'b2' !
- src: 'a2' -> dst: 'c2' !
+ on local side:
+ src: 'a2' -> dst: 'c2' !
+ on remote side:
+ src: 'a' -> dst: 'b' *
+ src: 'a2' -> dst: 'b2' !
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -170,7 +172,8 @@
unmatched files in other:
newfile
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'file' -> dst: 'newfile' %
+ on remote side:
+ src: 'file' -> dst: 'newfile' %
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -206,7 +209,10 @@
# we should not get the prompts about modify/delete conflicts
$ hg merge --debug 1 -t :merge3
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'x' -> dst: 'z'
+ on local side:
+ src: 'y' -> dst: 'z'
+ on remote side:
+ src: 'x' -> dst: 'z'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
--- a/tests/test-rename-merge2.t Wed Jan 22 15:31:17 2020 -0800
+++ b/tests/test-rename-merge2.t Fri Jan 24 10:39:55 2020 -0800
@@ -79,7 +79,8 @@
unmatched files in other:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on remote side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -117,7 +118,8 @@
unmatched files in local:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on local side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -156,7 +158,8 @@
unmatched files in other:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on remote side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -194,7 +197,8 @@
unmatched files in local:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on local side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -231,7 +235,8 @@
unmatched files in other:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on remote side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -263,7 +268,8 @@
unmatched files in local:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on local side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -294,7 +300,8 @@
unmatched files in other:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on remote side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -327,7 +334,8 @@
unmatched files in local:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on local side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -355,7 +363,10 @@
test L:um a b R:um a b W: - 9 do merge with ancestor in a
--------------
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on local side:
+ src: 'a' -> dst: 'b' *
+ on remote side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -400,8 +411,10 @@
unmatched files in other:
c
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' !
- src: 'a' -> dst: 'c' !
+ on local side:
+ src: 'a' -> dst: 'b' !
+ on remote side:
+ src: 'a' -> dst: 'c' !
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -434,7 +447,8 @@
test L:nc a b R:up b W: - 12 merge b no ancestor
--------------
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on local side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -473,7 +487,8 @@
test L:up b R:nm a b W: - 13 merge b no ancestor
--------------
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on remote side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -513,7 +528,8 @@
test L:nc a b R:up a b W: - 14 merge b no ancestor
--------------
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on local side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -553,7 +569,8 @@
test L:up b R:nm a b W: - 15 merge b no ancestor, remove a
--------------
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on remote side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -593,7 +610,8 @@
test L:nc a b R:up a b W: - 16 get a, merge b no ancestor
--------------
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on local side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -633,7 +651,8 @@
test L:up a b R:nc a b W: - 17 keep a, merge b no ancestor
--------------
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on remote side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -672,7 +691,8 @@
test L:nm a b R:up a b W: - 18 merge b no ancestor
--------------
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on local side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -717,7 +737,8 @@
test L:up a b R:nm a b W: - 19 merge b no ancestor, prompt remove a
--------------
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b'
+ on remote side:
+ src: 'a' -> dst: 'b'
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -765,7 +786,8 @@
unmatched files in other:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on remote side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -807,7 +829,8 @@
unmatched files in local:
b
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on local side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -853,7 +876,8 @@
unmatched files in other:
c
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: 'a' -> dst: 'b' *
+ on local side:
+ src: 'a' -> dst: 'b' *
checking for directory renames
resolving manifests
branchmerge: True, force: False, partial: False
@@ -936,11 +960,14 @@
4/g
7/f
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
- src: '1/f' -> dst: '1/g' *
- src: '3/f' -> dst: '3/g' *
- src: '4/f' -> dst: '4/g' *
- src: '5/f' -> dst: '5/g' *
- src: '6/f' -> dst: '6/g' *
+ on local side:
+ src: '1/f' -> dst: '1/g' *
+ src: '5/f' -> dst: '5/g' *
+ src: '6/f' -> dst: '6/g' *
+ on remote side:
+ src: '1/f' -> dst: '1/g' *
+ src: '3/f' -> dst: '3/g' *
+ src: '4/f' -> dst: '4/g' *
checking for directory renames
$ hg mani
0/f