Mercurial > hg > mercurial-crew-with-dirclash
view tests/test-git-import.out @ 4135:6cb6cfe43c5d
Avoid some false positives for addremove -s
The original code uses the similary score
1 - len(diff(after, before)) / len(after)
The diff can at most be the size of the 'before' file, so any small
'before' file would be considered very similar. Removing an empty file
would cause all files added in the same revision to be considered
copies of the removed file.
This changes the metric to
bytes_overlap(before, after) / len(before + after)
i.e. the actual percentage of bytes shared between the two files.
author | Erling Ellingsen <erlingalf@gmail.com> |
---|---|
date | Sun, 18 Feb 2007 20:39:25 +0100 |
parents | 9e248cfd8b94 |
children | e8ee8fdeddb1 |
line wrap: on
line source
% new file applying patch from stdin % new empty file applying patch from stdin empty % chmod +x applying patch from stdin % copy applying patch from stdin a a % rename applying patch from stdin copyx empty new rename % delete applying patch from stdin empty new rename % regular diff applying patch from stdin % copy and modify applying patch from stdin a a b a a % rename and modify applying patch from stdin copy2: No such file or directory a a b c a % one file renamed multiple times applying patch from stdin 9 rename2 rename3 rename3-2 / rename3 (rename2)rename3-2 (rename2) rename2: No such file or directory rename3 rename3-2 a a b c a a a b c a % binary files and regular patch hunks applying patch from stdin foo 045c85ba38952325e126c70962cc0f9d9077bc67 644 binary % many binary files applying patch from stdin 045c85ba38952325e126c70962cc0f9d9077bc67 644 mbinary1 a874b471193996e7cb034bb301cac7bdaf3e3f46 644 mbinary2