Re: Efficiency of initial clone from server
- From
Shawn O. Pearce <spearce@spearce.org>
- Date
- Feb 11, 2007, 22:53 UTC
- Message-ID
- <20070211225326.GC31488@spearce.org>
- In-Reply-To
- <9e4733910702111153p1691ad99nda97325b34b7a13f@mail.gmail.com>
Jon Smirl <jonsmirl@gmail.com> wrote:
> Is this happening because the repository on the server is not > completely packed? It is basically building a pack of the whole thing > and shipping it to me, right?
Correct. The wire protocol only allows us to send one pack. So we have to pack everything and transmit it as a single unit.
> If that is the case, why not first pack the whole repository and then > copy it down the wire? Now the next clone that comes along doesn't > have to do so much work. Would this help to eliminate some of the load > at kernel.org?
Probably, but then the daemon needs write access to the repository. This isn't required right now; it can be strictly read-only and still serve the contents.
> remote: Total 63, written 63 (delta 0), reused 63 (delta 0) > 100% (63/63) done > fatal: pack: not a valid SHA1 > New branch: 0953670fbcb75e26fb93340bddae934e85618f2e
What version of git is this? That looks like we're assuming the word pack was an object, but I'm not sure why we would do such a thing...
-- Shawn.