On Tue, Mar 11, 2014 at 01:25:23PM -0700, Junio C Hamano wrote:
> > Yeah, good idea. I might be misremembering some complications, but we
> > can probably do it with:
> > 1. Teach the client to send an "advertise-symrefs" flag before the ref
> > advertisement.
> > 2. Teach the server to include symrefs in the ref advertisement; we
> > can invent a new syntax because we know the client has asked for
> > it.
> I was thinking more about the underlying protocol, not advertisement
> in particular, and I think we came to the same conclusion.
> The capability advertisement deserves to have its own separate
> packet message type, when both sides say that they understand it, so
> that we do not have to be limited by the pkt-line length limit. We
> could do one message per capability, and at the same time can lift
> the traditional "capability hidden after the NUL is purged every
> time, so we need to repeat them if we want to later change it,
> because that is how older clients and servers use that information"
> insanity, for example.
So this may be entering the "more radical changes" realm I mentioned
If the client is limited to setting a few flags, then something like
http can get away with:
And it does not need to worry about upload-pack2 at all. Either the
server recognizes and acts on them, or it ignores them.
But given that we do not have such a magic out-of-band method for
passing values over ssh and git, maybe it is not worth worrying about.
Http can move to upload-pack2 along with the rest.
One thing that _is_ worth considering for http is how the protocol
starts. We do not want to introduce an extra http round-trip to the
protocol if we can help it. If the initial GET becomes a POST, then it
could pass along the pkt-line of client capabilities with the initial
request, and the server would respond with the ref advertisement as
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html