From: Duy Nguyen Date: Wed, 28 Aug 2013 03:06:49 GMT Subject: Re: [PATCH 00/23] Preliminary pack v4 support Message-ID: In-Reply-To: On Wed, Aug 28, 2013 at 9:58 AM, Nicolas Pitre wrote: >> But what if we store >> appended objects in OBJ_REF_DELTA format where base ref is empty >> tree/commit and cached by sha1_file.c? > > I don't follow you here. Missing objects need to be added to the pack, > they can't be cached anywhere. I use ref-delta as an alternate escape hatch to store missing commits and trees in unparsed format. In order to do that, I need a base ref SHA-1 and we can create and store SHA-1 of empty commit and emptry tree in sha1_file.c (because empty commit is not in a valid format and can't be parsed and stored in v3). So the result pack is still "thin" but it should only lack at most two objects: empty commit and empty tree. Thinking again this is much uglier than escape hatches to v3 tables.. -- Duy