threads / discuss / 21219

git-pack-objects gitattributes?

Subject: git-pack-objects gitattributes?

## tl;dr

4 messages between Oct 12, 2009 and Oct 20, 2009.

replies: 3people: 2as markdown or json

Nasser Grainawi· Oct 12, 2009, 23:00 UTC · lore
Hello,

I'm trying to avoid doing delta compression on a number of large binary files. I got a suggestion to use $GIT_DIR/info/attributes and a line like this: *.bin -delta

This doesn't seem to show a big improvement (and honestly I can't find where in the git-pack-objects source the value of this attribute is used).

Could someone shed some light on this attribute and any other improvements I could make for efficiently serving up a repo over git-daemon with near-weekly revisions of 100MB+ files?

Thanks, Nasser

Nasser Grainawi· Oct 19, 2009, 18:47 UTC · re: Nasser Grainawi · lore

Re: git-pack-objects gitattributes?

Nasser Grainawi wrote:
Show 16 quoted lines
> Hello,
> 
> I'm trying to avoid doing delta compression on a number of large binary 
> files. I got a suggestion to use $GIT_DIR/info/attributes and a line 
> like this:
> *.bin -delta
> 
> This doesn't seem to show a big improvement (and honestly I can't find 
> where in the git-pack-objects source the value of this attribute is used).
> 
> Could someone shed some light on this attribute and any other 
> improvements I could make for efficiently serving up a repo over 
> git-daemon with near-weekly revisions of 100MB+ files?
> 
> Thanks,
> Nasser
ping? any help? anyone?
Michael J Gruber· Oct 19, 2009, 19:15 UTC · re: Nasser Grainawi · lore

Re: git-pack-objects gitattributes?

Nasser Grainawi venit, vidit, dixit 19.10.2009 20:47:
Show 19 quoted lines
> Nasser Grainawi wrote:
>> Hello,
>>
>> I'm trying to avoid doing delta compression on a number of large binary 
>> files. I got a suggestion to use $GIT_DIR/info/attributes and a line 
>> like this:
>> *.bin -delta
>>
>> This doesn't seem to show a big improvement (and honestly I can't find 
>> where in the git-pack-objects source the value of this attribute is used).
>>
>> Could someone shed some light on this attribute and any other 
>> improvements I could make for efficiently serving up a repo over 
>> git-daemon with near-weekly revisions of 100MB+ files?
>>
>> Thanks,
>> Nasser
> 
> ping? any help? anyone?

Well, describing a reproducable test case would help... as well as telling us your git version.

builtin-pack-objects.c certainly refers to the delta attribute, see no_try_delta() and its callers.

Have you checked your attrs with git-check-attr? How do you measure the improvements you expect?

Michael
Nasser Grainawi· Oct 20, 2009, 16:34 UTC · re: Michael J Gruber · lore

Re: git-pack-objects gitattributes?

Michael J Gruber wrote:
Show 22 quoted lines
> Nasser Grainawi venit, vidit, dixit 19.10.2009 20:47:
>> Nasser Grainawi wrote:
>>> Hello,
>>>
>>> I'm trying to avoid doing delta compression on a number of large binary 
>>> files. I got a suggestion to use $GIT_DIR/info/attributes and a line 
>>> like this:
>>> *.bin -delta
>>>
>>> This doesn't seem to show a big improvement (and honestly I can't find 
>>> where in the git-pack-objects source the value of this attribute is used).
>>>
>>> Could someone shed some light on this attribute and any other 
>>> improvements I could make for efficiently serving up a repo over 
>>> git-daemon with near-weekly revisions of 100MB+ files?
>>>
>>> Thanks,
>>> Nasser
>> ping? any help? anyone?
> 
> Well, describing a reproducable test case would help... as well as
> telling us your git version.
1.6.5
> 
> builtin-pack-objects.c certainly refers to the delta attribute, see
> no_try_delta() and its callers.
Oops, somehow missed that while looking at the code right above it. Thanks.
> 
> Have you checked your attrs with git-check-attr? How do you measure the
> improvements you expect?
I did check, it returns 'unset' like one would expect.

I guess the big problem is that I don't have a good test case. I would have expected a 'git repack -adf' to spend less time saying "Compressing objects", but that doesn't seem to be happening...

Oh, wait, never mind. I was missing some of the binaries I was trying to skip. Adding some more exceptions to the attributes file dropped the "Compressing objects" time from 20 minutes (or more) to maybe 10 seconds.

Thanks Michael!
Nasser

← back to recent threads