Subject: Should copy/rename detection consider file overwrites?

From: Mike Hommey <[email-masked]>
Date: Fri, 23 Jan 2015 10:29:08 +0900

Hi,

While fooling around with copy/rename detection, I noticed that it
doesn't detect the case where you copy or rename a file on top of
another:

$ git init
$ (echo foo; echo bar) > foo
$ git add foo
$ git commit -m foo
$ echo 0 > bar
$ git add bar
$ git commit -m bar
$ git mv -f foo bar
$ git commit -m foobar
$ git log --oneline --reverse
7dc2765 foo
b0c837d bar
88caeba foobar
$ git blame -s -C -C bar
88caebab 1) foo
88caebab 2) bar

I can see how this is not trivially representable in e.g. git diff-tree,
but shouldn't at least blame try to tell that those lines actually come
from 7dc2765?

Mike