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

Re: git-pack-objects gitattributes?

From
Nasser Grainawi <nasser@codeaurora.org>
Date
Oct 20, 2009, 16:34 UTC
Message-ID
<4ADDE678.4030001@codeaurora.org>
In-Reply-To
<4ADCBAC7.9010601@drmicha.warpmail.net>
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
Previous: Michael J Gruber
Message 4 of 4 in “git-pack-objects gitattributes?”
  1. Nasser GrainawiOct 12, 2009
  2. Nasser GrainawiOct 19, 2009
  3. Michael J GruberOct 19, 2009
  4. Nasser GrainawiOct 20, 2009

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.