On Wed, 6 Sep 2006, Junio C Hamano wrote: > Nicolas Pitre <nico@xxxxxxx> writes: > > > BTW I'm half-way done with support for deltas which base object is > > referenced with an offset in the pack instead of a hash. It is quite > > messy though since it touches pretty core code all over the place when > > it comes to fetching objects out of a pack. > > I wonder how you made unpack-objects to work with it. Do you > store an extra bit in the packed stream to say "this object will > be used as a delta base for later objects so remember its offset > and resulting SHA1", or do you just remember every entry as you > unpack? Every entries. Much simpler that way. And the client must ask explicitly whether or not a fetched pack can have base objects referenced by sha1 or offset. So if you're really really tight on memory (like if you cannot afford the extra 50MB of RAM or so for the Mozilla repo for example) then this could be turned off. But if we decide to not explode packs upon a fetch but keep the downloaded pack as is (after validation) then index generation will come for free. Nicolas - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html