author | Junio C Hamano <junkio@cox.net> | |
Sun, 6 May 2007 04:18:57 +0000 (21:18 -0700) | ||
committer | Junio C Hamano <junkio@cox.net> | |
Sun, 6 May 2007 05:40:27 +0000 (22:40 -0700) | ||
commit | c63777c0d7687a1edff2c0da307ad8ac1d75c8f6 | |
tree | 1236cd41eddabecaadeff8e1d62436e299875b9e | tree | snapshot |
parent | dd166aa8e52dba39a3087b8012113af331d3110b | commit | diff |
blame: -C -C -C
When you do this, existing "blame -C -C" would not find that the
latter half of the file2 came from the existing file1:
... both file1 and file2 are tracked ...
$ cat file1 >>file2
$ git add file1 file2
$ git commit
This is because we avoid the expensive find-copies-harder code
that makes unchanged file (in this case, file1) as a candidate
for copy & paste source when annotating an existing file
(file2). The third -C now allows it. However, this obviously
makes the process very expensive. We've actually seen this
patch before, but I dismissed it because it covers such a narrow
(and arguably stupid) corner case.
Signed-off-by: Junio C Hamano <junkio@cox.net>
When you do this, existing "blame -C -C" would not find that the
latter half of the file2 came from the existing file1:
... both file1 and file2 are tracked ...
$ cat file1 >>file2
$ git add file1 file2
$ git commit
This is because we avoid the expensive find-copies-harder code
that makes unchanged file (in this case, file1) as a candidate
for copy & paste source when annotating an existing file
(file2). The third -C now allows it. However, this obviously
makes the process very expensive. We've actually seen this
patch before, but I dismissed it because it covers such a narrow
(and arguably stupid) corner case.
Signed-off-by: Junio C Hamano <junkio@cox.net>
builtin-blame.c | diff | blob | history |