git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* How to clone faster via ssh ?
@ 2005-10-25  7:49 Alexander Litvinov
  2005-10-25  7:54 ` Alexander Litvinov
  0 siblings, 1 reply; 6+ messages in thread
From: Alexander Litvinov @ 2005-10-25  7:49 UTC (permalink / raw)
  To: git

Hello,

I have cvs project imported into git. When unpacked it contains about 205000 
objects. I have made one pack and daily rerun cvsimport to get new changes.

When I do cloning via http it takes less than 3 minutes:
time git-clone -n http://127.0.0.1:8080/git/r/.git r2
real    2m31.062s
user    1m33.562s
sys     0m5.462s

When I do cloning via ssh it takes more than 10 minutes and horde of unpacked 
objects:
Packing 204607 objects
Unpacking 204607 objects
 100% (204607/204607) done

real    13m41.510s
user    1m52.655s
sys     1m5.057s

There are no packs in cloned repo:
ls -la r3/.git/objects/pack/
total 6
drwxr-xr-x    2 lan users   48 Oct 25 13:51 .
drwxr-xr-x  260 lan users 6240 Oct 25 14:05 ..
lan@lan:~/tmp/git/billing

We can't share our project via http - we need authorization for it. Is is 
possible to clone this repo via ssh as http clone does ? Its will be much 
faster and will simplify work with such directory - it is hard to delete it 
after cloning - takes from 5 up to 10 minutes ! Filesystem is reiserfs.

Thanks for help,
Alexander Litvinov.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to clone faster via ssh ?
  2005-10-25  7:49 How to clone faster via ssh ? Alexander Litvinov
@ 2005-10-25  7:54 ` Alexander Litvinov
  2005-10-25  9:04   ` Johannes Schindelin
  0 siblings, 1 reply; 6+ messages in thread
From: Alexander Litvinov @ 2005-10-25  7:54 UTC (permalink / raw)
  To: git

Forgot to tell:
clone via ssh was made using this command:
time git-clone -n ssh://lan@lan/home/lan/tmp/git/billing/repo r3
> When I do cloning via ssh it takes more than 10 minutes and horde of
> unpacked objects:
> Packing 204607 objects
> Unpacking 204607 objects
>  100% (204607/204607) done
>
> real    13m41.510s
> user    1m52.655s
> sys     1m5.057s

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to clone faster via ssh ?
  2005-10-25  7:54 ` Alexander Litvinov
@ 2005-10-25  9:04   ` Johannes Schindelin
  2005-10-25 11:30     ` Alexander Litvinov
  2005-10-25 17:17     ` Junio C Hamano
  0 siblings, 2 replies; 6+ messages in thread
From: Johannes Schindelin @ 2005-10-25  9:04 UTC (permalink / raw)
  To: Alexander Litvinov; +Cc: git

Hi,

On Tue, 25 Oct 2005, Alexander Litvinov wrote:

> Forgot to tell:
> clone via ssh was made using this command:
> time git-clone -n ssh://lan@lan/home/lan/tmp/git/billing/repo r3

If you have a working git on the other side, you could do

	time git-clone lan@lan:/home/lan/tmp/git/billing/repo r3

which would utilize git-clone-pack. Way faster.

Ciao,
Dscho

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to clone faster via ssh ?
  2005-10-25  9:04   ` Johannes Schindelin
@ 2005-10-25 11:30     ` Alexander Litvinov
  2005-10-25 17:17     ` Junio C Hamano
  1 sibling, 0 replies; 6+ messages in thread
From: Alexander Litvinov @ 2005-10-25 11:30 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: git

> If you have a working git on the other side, you could do
>
> 	time git-clone lan@lan:/home/lan/tmp/git/billing/repo r3
>
> which would utilize git-clone-pack. Way faster.

I have tried this command:
lan@lan> time git-clone lan@lan:/home/lan/tmp/git/billing/repo r3
defaulting to local storage area
lan@lan's password:
Packing 204607 objects
Unpacking 204607 objects
Killed by signal 2.) done

real    4m0.874s
user    0m0.013s
sys     0m0.120s

I have killed it at ~ 20%. As I understand it does exactly what ssh git thru 
ssh transport does: git-rev-list |  git-pack | ssh | git-unpack or something 
like this. So it is not faster.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to clone faster via ssh ?
  2005-10-25  9:04   ` Johannes Schindelin
  2005-10-25 11:30     ` Alexander Litvinov
@ 2005-10-25 17:17     ` Junio C Hamano
  2005-10-26  2:46       ` Alexander Litvinov
  1 sibling, 1 reply; 6+ messages in thread
From: Junio C Hamano @ 2005-10-25 17:17 UTC (permalink / raw)
  To: Johannes Schindelin; +Cc: git

Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:

> On Tue, 25 Oct 2005, Alexander Litvinov wrote:
>
>> Forgot to tell:
>> clone via ssh was made using this command:
>> time git-clone -n ssh://lan@lan/home/lan/tmp/git/billing/repo r3
>
> If you have a working git on the other side, you could do
>
> 	time git-clone lan@lan:/home/lan/tmp/git/billing/repo r3
>
> which would utilize git-clone-pack. Way faster.

I think both of these notations do the same.

The time to unpack the resulting pack on this end is eliminated
if you use git from last week, namely this commit:

commit e1c7ada6dd1fdf249d0bb84f3293d3be768b9239
Author: Junio C Hamano <junkio@cox.net>
Date:   Wed Oct 19 14:43:43 2005 -0700

    git-clone: always keep pack sent from remote.

    This deprecates --keep and -q flags and always keeps the
    pack
    sent from the remote site.  Corresponding configuration
    variables are also removed.

    Signed-off-by: Junio C Hamano <junkio@cox.net>

But you would still pay for creating a pack on the remote side.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: How to clone faster via ssh ?
  2005-10-25 17:17     ` Junio C Hamano
@ 2005-10-26  2:46       ` Alexander Litvinov
  0 siblings, 0 replies; 6+ messages in thread
From: Alexander Litvinov @ 2005-10-26  2:46 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Johannes Schindelin, git

> The time to unpack the resulting pack on this end is eliminated
> if you use git from last week, namely this commit:
>
> commit e1c7ada6dd1fdf249d0bb84f3293d3be768b9239
> Author: Junio C Hamano <junkio@cox.net>
> Date:   Wed Oct 19 14:43:43 2005 -0700
>
>     git-clone: always keep pack sent from remote.
>
>     This deprecates --keep and -q flags and always keeps the
>     pack
>     sent from the remote site.  Corresponding configuration
>     variables are also removed.
>
>     Signed-off-by: Junio C Hamano <junkio@cox.net>
>
> But you would still pay for creating a pack on the remote side.

Yeah ! Thanks.

Version for todays master branch works much faster:
lan@lan:~/tmp/git/billing> time git-clone -n 
ssh://lan@lan/home/lan/tmp/git/billing/repo r1
defaulting to local storage area
lan@lan's password:
Packing 204607 objects

real    4m0.107s
user    0m11.879s
sys     0m1.717s

And it makes only one pack. Great.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2005-10-26  2:47 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-10-25  7:49 How to clone faster via ssh ? Alexander Litvinov
2005-10-25  7:54 ` Alexander Litvinov
2005-10-25  9:04   ` Johannes Schindelin
2005-10-25 11:30     ` Alexander Litvinov
2005-10-25 17:17     ` Junio C Hamano
2005-10-26  2:46       ` Alexander Litvinov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).