Re: Request for detailed documentation of git pack protocol
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:46:55
Scott Chacon [off-list ref] writes:
I'm trying to take this whole thread and actually write an RFC style document for all of this stuff, but I'm still unclear on the .have portion of the conversation. Pointing me to an earlier relevant thread in the Git mailing list would be fine, too - it's difficult to search for '.have' usefully.
The actual patch series is this.
http://thread.gmane.org/gmane.comp.version-control.git/95351
The thread the patch series's cover letter refers as "the topic discussed
earlier" is this.
http://thread.gmane.org/gmane.comp.version-control.git/95072/focus=95256
Here is how people can dig this, for people's reference.
(1) Where in the code is this feature implemented?
$ git grep -n -e '\.have' -- '*.c'
builtin-receive-pack.c:647: add_extra_ref(".have",...
connect.c:87: name_len == 5 && !memcmp(".have", ...
(2) When was it added?
$ git blame -L 645,650 builtin-receive-pack.c
d79796bc (Junio C Hamano 2008-09-09 01:27:10 -0700 645) ex
d79796bc (Junio C Hamano 2008-09-09 01:27:10 -0700 646) ex
d79796bc (Junio C Hamano 2008-09-09 01:27:10 -0700 647)
d79796bc (Junio C Hamano 2008-09-09 01:27:10 -0700 648) }
d79796bc (Junio C Hamano 2008-09-09 01:27:10 -0700 649) transpo
d79796bc (Junio C Hamano 2008-09-09 01:27:10 -0700 650) free(ot
(3) Go to http://news.gmane.org/gmane.comp.version-control.git/ and page
back to the timeframe: