On Wed, 13 Aug 2008, Geert Bosch wrote:
> On Aug 13, 2008, at 10:35, Nicolas Pitre wrote:
First, there is the delta attribute:
|commit a74db82e15cd8a2c53a4a83e9a36dc7bf7a4c750
|Author: Junio C Hamano
|Date: Sat May 19 00:39:31 2007 -0700
|
| Teach "delta" attribute to pack-objects.
|
| This teaches pack-objects to use .gitattributes mechanism so
| that the user can specify certain blobs are not worth spending
| CPU cycles to attempt deltification.
|
| The name of the attrbute is "delta", and when it is set to
| false, like this:
|
| == .gitattributes ==
| *.jpg -delta
|
| they are always stored in the plain-compressed base object
| representation.
This could probably be extended to take a size limit argument as well.
> > As soon as you have more than
Loose objects, though, will always be selected for potential delta
generation. Packed objects, deltified or not, are always streamed as is
when serving pull requests. And by default delta compression is not
(re)attempted between objects which are part of the same pack, the
reason being that if they were not deltified on the first packing
attempt then there is no point trying again when streaming them over the
net. So you always benefit from having your large objects packed with
the rest. This, plus the delta prevention mechanism above should cover
most cases.
> > You'll have memory usage issues whenever such objects are accessed,
Pushing across the network, or repacking without -f, is streamed.
Checking out currently isn't (although it probably could). Repacking
with -f definitely isn't and probably shouldn't because of complexity
issues.
> > However, once those big objects are packed once, they can
Pack them in a pack of their own and stick a .keep file along with it.
At that point they will never be rewritten.
Nicolas
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
| Andrew Morton | 2.6.23-rc3-mm1 |
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Yinghai Lu | Re: [PATCH RFC] x86: check for and defend against BIOS memory corruption |
| Frederik Deweerdt | [-mm patch] remove tcp header from tcp_v4_check (take #2) |
| David Miller | [GIT]: Networking |
| Jarek Poplawski | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Herbert Xu | Re: [PATCH 2/3][NET_BATCH] net core use batching |
git: | |
