Subject: Re: git blame --follow

From: Jakub Narebski <[email-masked]>
Date: Thu, 17 Mar 2011 17:47:31 +0100

Dnia czwartek 17. marca 2011 11:16, Wolfgang Rohdewald napisał:
> On Donnerstag 17 März 2011, Jakub Narebski wrote:

> > So you probably want to run "git blame -C -C <file>", not "git
> > blame <file>".
> 
> that does the trick - I only tried "git blame -C"

Hmmm... it is described in git-blame(1) manpage, but you have to read
it carefully.

"git blame" synopsis states:

 'git blame' [-c] [-b] [-l] [--root] [-t] [-f] [-n] [-s] [-e] [-p] [-w] [--incremental] [-L n,m]
             [-S <revs-file>] [-M] [-C] [-C] [-C] [--since=<date>]
             [<rev> | --contents <file> | --reverse <rev>] [--] <file>

The important thing is to notice '[-C] [-C] [-C]' here.

In the description of '-C' option we have:

  -C|<num>|::
        In addition to `-M`, detect lines moved or copied from other
        files that were modified in the same commit.  This is
        useful when you reorganize your program and move code
        around across files.  When this option is given twice,
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        the command additionally looks for copies from other
        files in the commit that creates the file. When this
        option is given three times, the command additionally
        looks for copies from other files in any commit.

I have underlined important part.
-- 
Jakub Narebski
Poland