Subject: Re: Where did Documentation/perf_counter disappear from linux-2.6-tip.git ?

From: Tomas Carnecky <[email-masked]>
Date: Tue, 22 Dec 2009 13:23:25 +0100

On 12/22/09 1:14 PM, Daniel wrote:
> Dnia 22 grudnia 2009 11:04 	Tomas Carnecky<[email-masked]>  napisał(a):
>
>>    $ git --version
>> git version 1.6.6.rc4
>>
>> # Documentation/perf_counter is missing from the master branch, so first
>> let's find
>> # out what the last commit was that touched that subdirectory:
>> $ git log --all -1 -- Documentation/perf_counter
>> commit 436224a6d8bb3e29fe0cc18122f8d1f593da67b8
>> Author: Peter Zijlstra<[email-masked]>
>> Date:   Tue Jun 2 21:02:36 2009 +0200
>> ...
>> M       Documentation/perf_counter/builtin-report.c
>>
>> # Great, let's look in which branch that commit is
>> $ git branch --contains 436224a6d8bb3e29fe0cc18122f8d1f593da67b8
>> * master
>>
>> # So, let's look at the log of master and limit it to that subdirectory:
>> $ git log master -- Documentation/perf_counter
>> $
>>
>> # Damn, that doesn't make any sense. In commit 43622 there were files in
>> that subdirectory, in master they have gone missing and yet log doesn't
>> show any commit touching that subdirectory?
>> # Let's try something different:
>> $ git log --diff-filter=D --name-status --all -- Documentation/perf_counter
>> ...
>>
>> # Ah, now we're getting somewhere, but still no sight of a commit which
>> removed for example Documentation/perf_counter/.gitignore
>> # I'm sure I'm probably just missing a tiny little switch for git-log. I
>> also tried other combination of name-status, diff-filter etc, but soon
>> after gave up.
>>
>> tom
>> --
> Try
>
> $ git log --follow -- Documentation/perf_counter
>
Ah, that did the trick:
86470930, perf_counter tools: Move from Documentation/perf_counter/ to 
tools/perf/

However, that still doesn't answer my question why a simple git log 
doesn't show the commits. There are commits which touch that 
subdirectory, so why is a list of 'commits which touch that 
subdirectory' empty? Or am I misunderstanding what 'git log -- dir/' is 
supposed to do? I thought it did exactly that.

tom