2013-04-02 14 views
8

To jest mój pierwszy raz, aby zbudować serwer git. Kiedy używam TortoiseGit-1.8.1.0-32bit do obsługi operacji, wszystko jest w porządku!Git Clone jest zbyt wolny

Ale jeśli używam polecenia git clone lub git bash, szybkość procesu git jest tak mała. Dołączyłem dwa obrazy pokazujące względne prędkości transferu git clone poniżej.

Czy ktoś może podać mi jakieś sugestie?

Cloning via TortoiseGit

Cloning via git command

+2

Zdefiniuj "wolno". Pokazanie danych wyjściowych polecenia pomoże nam również zdiagnozować problem. –

+0

@RyanBigg zobacz linki – wRAR

+0

Czy Żółw jest skonfigurowany inaczej? –

Odpowiedz

6

Istnieją dwa problemy przy grają:

  1. Twój OpenSSL nie jest aktualne
  2. protokół SSH jest wolniejsze niż HTTPS (ale nie za dużo)

Część 1. OpenSSL

Po postępując zgodnie ze wskazówkami z artykułu, http://darrell.mozingo.net/2011/09/29/painfully-slow-clone-speeds-with-msysgit-gitextensions/, pomyślnie zwiększyło moje przepustowość sieci dla funkcjonowania git clone z 1 MiB/s do 28 MiB/s. Ten wynik został osiągnięty poprzez uaktualnienie OpenSSL z wersji 0.9.8e do wersji 1.0.1e.

Część 2. protokół SSH

Protokół SSH trochę wolniej niż protokołu HTTPS, ale nie na tyle, aby uzasadnić różnice prędkości I wymienione w części 1 lub co widzisz. Przeczytaj ten artykuł, aby uzyskać więcej informacji na temat protokołów Git: http://media.pragprog.com/titles/tsgit/chap-008-extract.html.

+0

Hej, powiedziałeś, że używasz OpenSSL 1.0.1e. Jest to wrażliwa wersja gry Heartbleed. Zalecam uaktualnienie do wersji 1.0.1g lub nowszej tak szybko, jak to możliwe. – richoffrails

+0

OpenSSH (klient) nie używa OpenSSL w sposób, który czyni go podatnym na Heartbleed, nie sądzę. – Mark

+0

Twój typowy msysgit pochodzi z OpenSSL 4, od 2007 roku, który ma błąd. Możesz użyć [wersji 6 (czerwiec 2015) OpenSSL, zbudowanej przez mls-soft] (http://www.mls-software.com/opensshd.html), aby uratować ten dzień. –

3

Jeśli, tak jak ja, został skonfigurowany do korzystania Plink TortoiseGit szpachlówka do łączenia (i używać konkurs, etc ...), to może pomóc:

Spróbuj włączyć w Putty (Ustawienia domyślne) następujące ustawienia :

  1. SSH -> Auth: "Zezwalaj na przekazywanie agent" (wierzę, że to jest ten, który zmienia "wszystko")
  2. SSH -> "Włącz kompresję"
  3. Session -> Wybierz " Ustawienia domyślne "->Zapisz

Dla mnie to spowodowało przejście z 143.00 KiB/s do 4,50 MiB/s

nadzieję, że to pomaga.

5

Może można sprowadzić tylko najnowszej wersji, a potem sprowadzić resztę:

$ git clone --depth=1 [email protected]:joe/hello-world.git 
$ cd hello-world 
$ git fetch --unshallow 

Dzięki this article!