Subject: Re: Git-aware HTTP transport

From: "Shawn O. Pearce" <[email-masked]>
Date: Mon, 1 Sep 2008 23:13:42 -0700

"H. Peter Anvin" <[email-masked]> wrote:
> Shawn O. Pearce wrote:
>>
>> Correct.  Today _none_ of the transport protocols allow the server
>> to force the client to use some sort of reference repository for an
>> initial clone.  There are likely two reasons for this:
>>
>>  *) Its a lot simpler to program to just get everything from
>>     one location.
>>
>>  *) If you really are forking an open source project then in
>>     some cases you may need to distribute the full source,
>> 	not your delta.  You may just as well distribute the full
>> 	source and call it a day.
>>
>
> 3) it encourages single points of failure.

Or bad network usage, as I pointed out later about an India user
unknowingly being forced into a US based mirror when another was
closer to them.

I didn't make it clear in my response but I'm really against our
protocol having this sort of explicit redirect.  I'd rather put a
requirement in that says "Unless you have X,Y,Z in common with me
(directly or indirectly) I'm just not going to give you a pack".

FWIW that fixes an issue for me at day-job that people will be
cursing about later this year in public.  Not my fault.  We would
all rather just publish the entire repository.  Instead we have
to publish something that requires the user to clone it from
another source first, and use fetch or "clone --reference" to get
our updates.  *sigh*

-- 
Shawn.