Mercurial > hg > mercurial-crew-with-dirclash
annotate tests/test-log @ 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 | 7df171ea50cd |
children | 4574a8cb080f |
rev | line source |
---|---|
2741
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
1 #!/bin/sh |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
2 |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
3 hg init a |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
4 |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
5 cd a |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
6 echo a > a |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
7 hg ci -Ama -d '1 0' |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
8 |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
9 hg cp a b |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
10 hg ci -mb -d '2 0' |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
11 |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
12 mkdir dir |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
13 hg mv b dir |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
14 hg ci -mc -d '3 0' |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
15 |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
16 hg mv a b |
3837
7df171ea50cd
Fix log regression where log -p file showed diffs for other files
Matt Mackall <mpm@selenic.com>
parents:
3718
diff
changeset
|
17 echo a > d |
7df171ea50cd
Fix log regression where log -p file showed diffs for other files
Matt Mackall <mpm@selenic.com>
parents:
3718
diff
changeset
|
18 hg add d |
2741
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
19 hg ci -md -d '4 0' |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
20 |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
21 hg mv dir/b e |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
22 hg ci -me -d '5 0' |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
23 |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
24 hg log a |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
25 echo % -f, directory |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
26 hg log -f dir |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
27 echo % -f, but no args |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
28 hg log -f |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
29 echo % one rename |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
30 hg log -vf a |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
31 echo % many renames |
ae5ce3454ef5
log: add -f/--follow option, to follow rename/copy
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
32 hg log -vf e |
2780
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
33 |
3190 | 34 echo % log copies |
35 hg log -vC --template '{rev} {file_copies%filecopy}\n' | |
36 | |
3382
c7c6f1a45348
Test case for log --copies on non-linear manifests (issue391)
Brendan Cully <brendan@kublai.com>
parents:
3190
diff
changeset
|
37 echo % log copies, non-linear manifest |
c7c6f1a45348
Test case for log --copies on non-linear manifests (issue391)
Brendan Cully <brendan@kublai.com>
parents:
3190
diff
changeset
|
38 hg up -C 3 |
c7c6f1a45348
Test case for log --copies on non-linear manifests (issue391)
Brendan Cully <brendan@kublai.com>
parents:
3190
diff
changeset
|
39 hg mv dir/b e |
c7c6f1a45348
Test case for log --copies on non-linear manifests (issue391)
Brendan Cully <brendan@kublai.com>
parents:
3190
diff
changeset
|
40 echo foo > foo |
c7c6f1a45348
Test case for log --copies on non-linear manifests (issue391)
Brendan Cully <brendan@kublai.com>
parents:
3190
diff
changeset
|
41 hg ci -Ame2 -d '6 0' |
c7c6f1a45348
Test case for log --copies on non-linear manifests (issue391)
Brendan Cully <brendan@kublai.com>
parents:
3190
diff
changeset
|
42 hg log -vC --template '{rev} {file_copies%filecopy}\n' -r 5 |
c7c6f1a45348
Test case for log --copies on non-linear manifests (issue391)
Brendan Cully <brendan@kublai.com>
parents:
3190
diff
changeset
|
43 |
3837
7df171ea50cd
Fix log regression where log -p file showed diffs for other files
Matt Mackall <mpm@selenic.com>
parents:
3718
diff
changeset
|
44 echo '% log -p d' |
7df171ea50cd
Fix log regression where log -p file showed diffs for other files
Matt Mackall <mpm@selenic.com>
parents:
3718
diff
changeset
|
45 hg log -pv d |
7df171ea50cd
Fix log regression where log -p file showed diffs for other files
Matt Mackall <mpm@selenic.com>
parents:
3718
diff
changeset
|
46 |
2780
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
47 # log --follow tests |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
48 hg init ../follow |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
49 cd ../follow |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
50 echo base > base |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
51 hg ci -Ambase -d '1 0' |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
52 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
53 echo r1 >> base |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
54 hg ci -Amr1 -d '1 0' |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
55 echo r2 >> base |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
56 hg ci -Amr2 -d '1 0' |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
57 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
58 hg up -C 1 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
59 echo b1 > b1 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
60 hg ci -Amb1 -d '1 0' |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
61 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
62 echo % log -f |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
63 hg log -f |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
64 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
65 hg up -C 0 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
66 echo b2 > b2 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
67 hg ci -Amb2 -d '1 0' |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
68 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
69 echo % log -f -r 1:tip |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
70 hg log -f -r 1:tip |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
71 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
72 hg up -C 3 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
73 hg merge tip |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
74 hg ci -mm12 -d '1 0' |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
75 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
76 echo postm >> b1 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
77 hg ci -Amb1.1 -d'1 0' |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
78 |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
79 echo % log --follow-first |
e7f70588af30
Test suite for log --follow and --follow-first.
Brendan Cully <brendan@kublai.com>
parents:
2741
diff
changeset
|
80 hg log --follow-first |
2886 | 81 |
82 echo % log -P 2 | |
83 hg log -P 2 | |
3718
7db88b094b14
fix hg log -r ''
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3382
diff
changeset
|
84 |
7db88b094b14
fix hg log -r ''
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3382
diff
changeset
|
85 echo '% log -r ""' |
7db88b094b14
fix hg log -r ''
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3382
diff
changeset
|
86 hg log -r '' |
7db88b094b14
fix hg log -r ''
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3382
diff
changeset
|
87 |
7db88b094b14
fix hg log -r ''
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
3382
diff
changeset
|
88 exit 0 |