2015-04-13 24 views
21

Obserwujemy powolny git sprowadzić polecenia w instalacji Jenkins w systemie Windows Server 2012. Mam próbował wszystkich rozwiązań wymienionych w tych wątków:Jenkins (Windows) bardzo powolny Git sprowadzić

Ktoś był w stanie znaleźć rozwiązanie tego problemu ze stałą poprawką?

Konsola dziennika wyjście z Jenkins:

Rozpoczęty przez zdalnego hosta

budynek na mistrza w obszarze roboczym F: \ Jenkins \ pracy \ xxx \ workspace

> git.exe rev-parse --is-wewnątrz-praca-tree # timeout = 10

Pobieranie zmiany ze zdalnego repozytorium Git

> git.exe config remote.origin.url xhttp: // SCM/git/xxx # timeout = 10

Pobieranie zmian górę od xhttp: // SCM/git/xxx

> git.exe - -version # timeout = 10

użyciu .gitcredentials ustawić poświadczenia

> git.exe config --local credential.helper sklep --file = \ "C: \ Users \ APP_JE ~ 1 \ AppData \ Local \ Temp \ git7476037793811743133.credentials \ "# timeout = 10

> git.exe -c core.askpass = true fetch --tag s --progress xhttp: // SCM/git/xxx + literaturowe/głowic/: literaturowe/piloty/pochodzenia/

problemem: Powyższe polecenie może trwać od 30 sekund do 120 sekund. Na lokalnym komputerze dev zajmuje to kilka sekund.

> git.exe config --local --remove-sekcja poświadczeń # informacji timeout = 10

Wersja:

Jenkins: 1,608 (najnowsza)

Windows: Serwer 2012

Git: 1.9.5 (najnowsze dla Windows xhttp: //git-scm.com/download/win)

Git plugin Klient Jenkins: 1.16.1 (ostatnia)

Git plugin dla Jenkins: 2.3.5 (najnowsza)

Jenkins pracuje jako użytkownik domeny, która ma uprawnienia administratora na serwerze

+0

Czy próbowałeś ponownie zainstalować git jak wspomniano [tutaj] [1]? [1]: http://stackoverflow.com/a/4506192/779338 –

+0

Tak próbowałem tego. To nie pomaga. Zastosowałem te 3 opcje konfiguracji bez powodzenia: '$ git config --global core.preloadindex true' ' $ git config --global core.fscache true'' '$ git config --global gc.auto 256' –

+0

Czy serwer znajduje się za innym serwerem proxy niż lokalny komputer? Czasami mamy problemy z naszym serwerem proxy skanującym wszystkie pliki, co zajmuje trochę czasu. – michaelbahr

Odpowiedz

9

rozwiązuje ten problem. Teraz działa niesamowicie szybko!

Używam git cmd w Jenkins od:

C: Program Files \ \ Git \ cmd \ git.exe

+0

Wreszcie! Od prawie dwóch lat to mi przeszkadza! – berkus

1

próby włączenia niektórych flagi debug/wydajność git, aby uzyskać więcej informacji o tym, gdzie rzeczy są poświęcenie czasu wewnątrz jego hydraulika, patrz https://git-scm.com/book/en/v2/Git-Internals-Environment-Variables. Na przykład: export GIT_TRACE=1, a także wypróbuj GIT_TRACE_PERFORMANCE i GIT_TRACE_PACKET.

+3

Każdy pomysł, w jaki sposób mogę włączyć te flagi za pomocą wtyczki Jenkins Git i jak wyświetlić później te flagi? –

1

użyć zachowań zaawansowane klon i włączyć pole wyboru „Czy nie pobieraj znaczników ", jeśli ich nie potrzebujesz. Git powinien nadal kasować wskazaną gałąź/znacznik.