Re: Linux 2.6.15-rc2

From: Linus Torvalds
Date: Thu Nov 24 2005 - 13:44:47 EST




On Thu, 24 Nov 2005, Andreas Ericsson wrote:
>
> git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git 2.6
>
> which works flawlessly for me although it takes quite some time to transfer
> all the data.

The initial clone is very expensive for the native git protocol: the
protocol is designed to scale well for incremental updates (ie you have a
_huge_ repository that has changed just a bit, and the protocol should
work well for that), and that makes the initial clone quite expensive as
it marshalls the whole damn repository into this nice packed format.

So it's often nicer (certainly on the remote server) to use "rsync" for
the initial clone, and then only after that start using the git protocol.

(This is in no way really fundamental, and the server could cache the
packs it generates for initial clones, but that isn't implemented yet, and
probably won't be for some times).

Of course, especially if you're mostly bandwidth-constrained and the
server side is not under a big load, using the native git protocol may
actually be faster anyway. Because it's always going to generate the
nicest packing, while rsync:// will just use whatever packing that the
server happens to have at that point (but I do repack every few weeks, so
rsync for the initial clone should never be horribly bad - and since I
just repacked, it should get that "perfect" pack too).

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/