Re: [PATCH 4/5] upload-pack: implement protocol extension "symbolic-ref"
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Dec 1, 2008, 14:03 UTC
- Message-ID
- <7vy6z0q9fm.fsf@gitster.siamese.dyndns.org>
- In-Reply-To
- <20081130180214.GA10375@coredump.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 16 quoted lines
> On Sun, Nov 30, 2008 at 01:57:29AM -0800, Junio C Hamano wrote: > ... >> This is unfortunate because it forces an extra round trip (receiving end >> sends a "please tell me symbolic-ref" packet, and then upload side sends >> "here are the requested information" packet), but it has to be implemented >> this way because (1) ls-remote may need to ask for this information, in >> which case there is no "want" to be sent; and (2) the transport API >> insists that transport_get_remote_refs() returns the final list, and does >> not allow augmenting what was initially obtained from the call to it by >> later calls to transport_fetch_refs() easily. > > Hrm. For (1), could we allow either interaction method? IOW, allow > requesting a symref on the first want line, _or_ by separate "symbolic > ref" packet? That would allow clients who are using "want" to > piggy-back the symref request as an optimization, but not restrict those > that just want to ask for it?
I think I found another hole in the protocol that we can use to carry the "which branch does HEAD points at" information in a backward compatible way, and it would be a much less intrusive although more sneaky way. And it would not have to suffer from the above issues at all.
A patchset follows shortly...