Mercurial > hg
changeset 44197:17e12938f8e7
copies: print debug information about copies per side/branch
Differential Revision: https://phab.mercurial-scm.org/D7987
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Fri, 24 Jan 2020 10:39:55 -0800 |
parents | 6ca9f45b32b0 |
children | 8ad263c3a358 |
files | mercurial/copies.py tests/test-copy-move-merge.t tests/test-double-merge.t tests/test-graft.t tests/test-issue672.t tests/test-merge-criss-cross.t tests/test-rename-dir-merge.t tests/test-rename-merge1.t tests/test-rename-merge2.t |
diffstat | 9 files changed, 109 insertions(+), 61 deletions(-) [+] |
line wrap: on
line diff
--- 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