2009-11-30 08:20:29

by Dan Carpenter

[permalink] [raw]
Subject: host a git archive on an rsync server?

Could someone do a git clone and put it on an rsync server for me?

I am in Africa and it is going to take some months before I get
broadband. The max bandwith I can currently buy at one time is 200MB.
It's not enough to clone of the kernel. With git you can't download
200MB, disconnect and then download the remaining bits later, so
that's why I need rsync.

If I had the initial clone, I could pull in the changes every day
no problem.

It costs $.05 USD per MB so maybe the best way to save bandwidth
is something like this:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
mv linux-2.6/.git linux-2.6.gitdir
tar cvvf linux-2.6.gitdir.tar linux-2.6.gitdir
bzip2 linux-2.6.gitdir.tar

I would be super grateful if anyone could do this.

thanks,
dan carpenter


2009-11-30 12:52:01

by Avi Kivity

[permalink] [raw]
Subject: Re: host a git archive on an rsync server?

On 11/30/2009 10:20 AM, Dan Carpenter wrote:
> Could someone do a git clone and put it on an rsync server for me?
>
>

http://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git/

and use some downloaded which supports resuming interrupted downloads.

--
error compiling committee.c: too many arguments to function

2009-12-03 07:07:43

by James Cloos

[permalink] [raw]
Subject: Re: host a git archive on an rsync server?

>>>>> "Dan" == Dan Carpenter <[email protected]> writes:

Dan> Could someone do a git clone and put it on an rsync server for me?

You can rsync the bare repo from kernel.org at:

rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

After you get the rsync of the bare tree, do:

git clone --reference linux-2.6.git git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

then you can delete the linux-2.6/.git/objects/info/alternates file and
copy the linux-2.6.git/objects/ tree to linux-2.6/.git/objects/.

(Making the separate clone and moving over the referenced objects is the
best way to ensure that the resulting repo has the same settings as a
direct clone would have. You may want to run a git gc after all of that
to pack any loose objects from the rsync'ed repo.

-JimC
--
James Cloos <[email protected]> OpenPGP: 1024D/ED7DAEA6