git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [RFC] Enable 'check for copy and renames' (-C) also when path filtering

From
Junio C Hamano <junkio@cox.net>
Date
Aug 16, 2006, 21:11 UTC
Message-ID
<7vr6zg2xoh.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<e5bfff550608161349t29a678ccl4b211cb570a1217d@mail.gmail.com>
"Marco Costalba" <mcostalba@gmail.com> writes:
Show 31 quoted lines
> On 8/16/06, Junio C Hamano <junkio@cox.net> wrote:
>> "Marco Costalba" <mcostalba@gmail.com> writes:
>>
>> > It seems that -C option of git-diff-tree it works only if the whole
>> > changeset is retrieved.
>>
>> Correct (sort of).  Pathspec works on the input side not on the
>> output side.  It's been specified and worked that way from the
>> beginning (check the list archive to see me arguing that it
>> would be easier to use on the output side, and Linus vetoing
>> because following a single file is not that interesting and the
>> cost outweighs the benefit of that uninteresting case).
>>
>> Always feeding the whole tree is wasteful, but if we are
>> interested in following a single file, we could do something
>> like:
>>
>>  - follow that file and that file only from the recent to past;
>>
>>  - notice when that file disappears -- that is the point the
>>    file was created.  it may have created from scratch, it may
>>    have been renamed or copied.
>>
>>  - on that commit that creates the file, look at the whole tree
>>    to see if we can find an origin.
>>
>>  - if we find that the file was created by renaming or copying
>>    another, keep following that other file from that point on.
>
> Yes, I was thinking about something like this, Thanks for point me out
> this, now I am quite sure it's the correct way to go ;-)

You may want to talk with Fredrik about this. The above is not entirely my making but was an outline brought up while we discussed his "rename following revision walker" on the list recently.

Previous: Marco Costalba
Message 4 of 4 in “[RFC] Enable 'check for copy and renames' (-C) also when path filtering”
  1. Marco CostalbaAug 16, 2006
  2. Junio C HamanoAug 16, 2006
  3. Marco CostalbaAug 16, 2006
  4. Junio C HamanoAug 16, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.