Subject: Re: .git/info/attributes not cloned

From: Toby Corkindale <[email-masked]>
Date: Thu, 27 Mar 2008 15:48:31 +1100

Jeff King wrote:
> On Thu, Mar 27, 2008 at 03:23:27PM +1100, Toby Corkindale wrote:
> 
>> Ah, OK.
>> I was hoping not to use .gitattributes, as then the attributes are  
>> ignored when doing something like:
>> git archive --remote=example.com:/path/to/repo release/v2.1 | tar xf -
> 
> I vaguely recall some discussion of this in the past, so maybe it isn't
> a good idea. But I would think changing git-archive to respect
> .gitattributes might be worth doing (presumably the version of
> .gitattributes from the tree that is being exported).

Respecting the repo's .gitattributes would feel right. It seems unusual 
(to me) that it bypasses $REMOTE/.gitattributes, but DOES check 
$REMOTE/info/attributes.

>> That gives a clue that the /info/ files are repo-specific.
>> However in gitignore(5) and gitattributes(5), there is no explanation of  
>> this - it simply mentions that the info version is a higher priority than 
>> the .git{ignore,attributes} version.
>>
>> I suggest that the individual docs/man-pages should mention that too.
>> I'll submit a patch in a separate email, as long as I'm not still  
>> misunderstanding the mechanism.
> 
> I think you understand what is going on. A clarification to both pages
> would be helpful, I think, just saying "here is why you might use one
> over the other."

Cheers. I've submitted my patch now. I hope I have the doc syntax right.

>> Is there a recommended way to make attributes apply to commands run on a  
>> remote repository, or is that a different bug?
> 
> I'm not sure what you mean here. Very few commands talk to remote
> repositories. I had assumed in your git-archive example that you wanted
> .gitattributes on the remote repo to affect the tarfile generated by
> that repo. But now it sounds like you want to edit a local file to
> impact the archive generated remotely. I don't think there is a way to
> do that.

Ah, no, you were right in your first assumption. I just wanted 
git-archive to apply gitattributes to the resulting tarball.
(I should have phrased that last line as "..apply to commands connecting 
to a remote repo.." and it would make more sense.)

thanks,
Toby