From: Junio C Hamano Date: Thu, 26 May 2011 04:08:21 GMT Subject: Re: [PATCHv2 1/2] Support multiple virtual repositories with a single object store and refs Message-ID: <7vsjs2yuh6.fsf@alter.siamese.dyndns.org> In-Reply-To: Johannes Schindelin writes: >> Not that we know of. Are we missing something? > > This is a change of protocol by my understanding: > > -- snip -- > if (sent_capabilities) > - packet_write(1, "%s %s\n", sha1_to_hex(sha1), path); > + packet_write(1, "%s %s%s\n", sha1_to_hex(sha1), refnameprefix, path); > -- snap -- I think this is not a change in the protocol per-se, but rather a botched attempt to make refs/virt/one/refsheads/foo this side has appear as if it is refs/heads/foo to the other side. In other words, you probably spotted a bug. When read with the "chroot" analogy of Peff and Shawn earlier in the thread in mind, shouldn't the sending end that is pretending that only a part of its ref namespace is actually the whole thing _stripping_ the prefix from the real namespace, rather than appending the extra prefix? I've been down sick, feeling feverish, this afternoon, so I may be remembering what I understood while reading the code incorrectly, but that was the impression I got.