Subject: Re: [PATCH 10/38] pack v4: commit object encoding

From: Junio C Hamano <[email-masked]>
Date: Fri, 06 Sep 2013 15:08:08 -0700

Nicolas Pitre <[email-masked]> writes:

> OK.  If I understand correctly, the committer time stamp is more 
> important than the author's, right?

Yeah, it matters a lot more when doing timestamp based traversal
without the reachability bitmaps.

> ... may I suggest keeping the tree reference first.  That 
> is easy to skip over if you don't need it,...
> ... Whereas, for a checkout where only the tree info is needed, if it is 
> located after the list of parents, then the above needs to be done for 
> all those parents and the committer time.

Hmm.  I wonder if that is a really good trade-off.

"checkout" is to parse a single commit object and grab the "tree"
field, while "log" is to parse millions of commit objects to grab
their "parents" and "committer timestamp" fields ("log path/spec"
needs to grab "tree", too, so that does not make "tree" extremely
uncommon compared to the other two fields, though).

I dunno.