blame follows renames, but log doesn't
- From
Martin Langhoff <martin.langhoff@gmail.com>
- Date
- Jun 19, 2007, 01:10 UTC
- Message-ID
- <46a038f90706181810p716f914al4d9abba5bfe7eb5@mail.gmail.com>
Hi all,
when I show git to newbies or demo it to people using other SCMs, and we get to the rename part of the conversation, I discuss and show how GIT's approach is significantly better than explicit recording of renames.
One great example is git-blame -- actually more spectacular with the recent git gui blame improvements. But git-log still doesn't do it.
If I say git blame git-cvsimport.perl # goes to the true origin like a champ git log git-cvsimport.perl # stops at the Big Tool Rename
In thread in May Linus posted a PoC patch to get git-blame to do it http://marc.info/?l=git&m=117347893211567&w=2 , and outlined the reasons why it'd be wrong to try to do that in git-log -- but it didn't come to happen :-/
cg-log used to have some Perl logic that could do this -- it didn't always work, but I'm sometimes tempted to go back to it, and review it.
Linus said:
> But it's an example of the fact that yes, git can do this, but we're so > stupid that we don't really accept it.
And I'm sure people can cope with git blame --log path/to/file and we can add a note to git-log manpage about renames being reported by blame instead.
And I kind of hate having to reply to things like these
http://www.markshuttleworth.com/archives/125
cheers
martin