emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] git repository over http?


From: Jason Dunsmore
Subject: Re: [O] git repository over http?
Date: Fri, 19 Aug 2011 07:30:59 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux)

Bastien <address@hidden> writes:

> Hi Jonathan,
>
> Jonathan Leech-Pepin <address@hidden> writes:
>
>> The server does seem to support HTTP for pulling, however it is very
>> slow. 
>
> Yes, I noticed this too.
>
>> http:// does work for cloning and pulling from the main Repo, however
>> there's nothing to indicate that anything is happening until the task
>> is complete.
>
> Yes.
>
> Jason, is the slowliness something worth trying to fix?   
> Can we get some indication that the repo is currently being
> cloned?

I ran some tests and found that the download speed is proportional to
the size of the repo:

--8<---------------cut here---------------start------------->8---
$ time /usr/bin/git clone http://orgmode.org/org-mode.git
Cloning into org-mode...

real    15m23.475s
user    0m30.434s
sys     0m7.588s

$ time /usr/bin/git clone git://orgmode.org/org-mode.git org-mode2
Cloning into org-mode2...
remote: Counting objects: 51864, done.
remote: Compressing objects: 100% (14898/14898), done.
remote: Total 51864 (delta 41315), reused 46129 (delta 36900)
Receiving objects: 100% (51864/51864), 53.00 MiB | 205 KiB/s, done.
Resolving deltas: 100% (41315/41315), done.

real    5m19.350s
user    0m19.341s
sys     0m2.576s

$ time /usr/bin/git clone http://repo.or.cz/r/org-mode.git org-mode3
Cloning into org-mode3...

real    7m15.211s
user    0m21.293s
sys     0m3.652s

$ du -sh org-mode*
201M    org-mode
63M     org-mode2
70M     org-mode3
--8<---------------cut here---------------end--------------->8---

If you clone via git://, it does some optimizations during the transfer,
whereas cloning via http:// does not.  If I do a "git gc" on the repo,
it reduces the size of the repo on the server and the time to download
via http://

--8<---------------cut here---------------start------------->8---
$ cp -r /home/orgmode/org-mode.git/ /var/www/orgmode.org/org-mode-copy.git
$ cd /var/www/orgmode.org/org-mode-copy.git
$ du -sh
221M    .
$ git gc
$ du -sh
65M     .

$ time /usr/bin/git clone http://orgmode.org/org-mode-copy.git
Cloning into org-mode-copy...

real    5m6.472s
user    0m18.797s
sys     0m2.300s

$ du -sh org-mode-copy
63M     org-mode-copy
--8<---------------cut here---------------end--------------->8---

I'd recommend using the repo.or.cz repo for http:// downloads.
repo.or.cz probably runs git-http-backend or does a "git gc"
occasionally.

Any user feedback for "git clone" would be up to the git client.  It
used to say "got... walk..." prior to 1.7.  Not sure why they removed
those messages in 1.7.

Regards,
Jason



reply via email to

[Prev in Thread] Current Thread [Next in Thread]