Re: [PATCH 2/2] Make Git respect changes to .gitattributes during checkout.
- From
- Kristian Amlie <kristian.amlie@nokia.com>
- Date
- Mar 12, 2009, 10:23 UTC
- Message-ID
- <49B8E29C.5080107@nokia.com>
- In-Reply-To
- <49B8DD1D.3060908@viscovery.net>
ext Johannes Sixt wrote:
Show 14 quoted lines
> Kristian Amlie schrieb:
>> We do this by popping off elements on the attribute stack, until we
>> reach the level where a new .gitattributes was checked out. The next
>> time someone calls git_checkattr(), it will reconstruct the
>> attributes from that point.
> ...
>> + gitattrlen = strlen(GITATTRIBUTES_FILE);
>> + pathlen = strlen(path);
>> + if (!strncmp(path + pathlen - gitattrlen, GITATTRIBUTES_FILE, gitattrlen)) {
>> + /* Invalidate attributes if a new .gitattributes file was checked out. */
>
> But if there was file .abc.txt that was checked out before .gitattributes
> was checked out, then the new .gitattributes won't have been used for
> .abc.txt, yet, right?You're right, that fails.
I'm guessing my initial patch (and testcase) works because the sorting is alphabetical and .gitattributes happens to be checked out before files with letters. I would need to make sure that .gitattributes gets checked out first.
-- Kristian