Comments
Patch
@@ -93,8 +93,8 @@
x y
$ hg debugp1copies -r 1
x -> y
-Incorrectly doesn't show the rename
$ hg debugpathcopies 0 1
+ x -> y (no-filelog !)
Copy a file onto another file with same content. If metadata is stored in changeset, this does not
produce a new filelog entry. The changeset's "files" entry should still list the file.
@@ -111,8 +111,8 @@
x x2
$ hg debugp1copies -r 1
x -> x2
-Incorrectly doesn't show the rename
$ hg debugpathcopies 0 1
+ x -> x2 (no-filelog !)
Rename file in a loop: x->y->z->x
$ newrepo
@@ -59,14 +59,13 @@
# Cases 1, 3, and 5 are then removed by _filter().
for k, v in list(t.items()):
- # remove copies from files that didn't exist
- if v not in src: # case 5
+ if k == v: # case 3
del t[k]
- # remove criss-crossed copies
- elif k in src and v in dst:
+ elif v not in src: # case 5
+ # remove copies from files that didn't exist
del t[k]
- # remove copies to files that were then removed
elif k not in dst: # case 1
+ # remove copies to files that were then removed
del t[k]