Ich habe folgende Anrufstruktur:
- Jenkins rennt
fab -Huser@host set_repository_commit_hash:123abc
. set_repository_commit_hash
läuftgit fetch
mitpty = False
.- Der untergeordnete Prozess wird
ssh [email protected] git-upload-pack 'user/repository.git'
nie beendet.
Ich habe versucht, git fetch
in einem lokalen Klon auszuführen, und das ist erfolgreich, aber das Ausführen gibt ssh [email protected] git-upload-pack 'user/repository.git'
nur Folgendes zurück und hängt:
00ab84249d3bb20930c185c08848c60b71f7b28990d6 HEADmulti_ack thin-pack side-band side-band-64k ofs-delta shallow no-progress include-tag multi_ack_detailed agent=git/1.8.4
0041cb34b1c8ca75d478df38c794fc15c5f01cc6377e refs/heads/branch_name
004012577068adf47015001bfa0cff9386d6cdf497ce refs/heads/[...]
003f84249d3bb20930c185c08848c60b71f7b28990d6 refs/heads/master
[a couple more lines like the ones above, then:]
0000
Ist dies ein bekanntes SSH / Git / Fabric / Jenkins-Problem?
Ich habe strace
es getan , aber ich habe die Sitzung nicht aufgezeichnet. Ich glaube es steckte auf einem read
.
Möglicherweise relevante Links:
- Jenkins Problem 14752: SCM-Abfrage / Max. Anzahl gleichzeitiger Abfragen = 1 hängt bei Github-Abfragen
- Warum sollte git-upload-pack (während des Klonens von git) hängen bleiben?
- tortoisegit issue 1880: Der Abruf von tortoisegit hängt, weil tortoisegitplink ausgeführt wird (insbesondere Kommentar 7 )
- Was ist dieser zufällige, endlose 'Git-Upload-Pack'-Prozess?
strace -p <pid of hung git daemon>
sagt es auch, dass es blockiert?git-upload-pack
Genau das soll AFAICT tun. Es wartet darauf, dass Sie das git-Fetch-Pack-Protokoll sprechen und ihm mitteilen, welche Daten gesendet werden sollen (versuchen Sie es in einem lokalen Repository auszuführen, Sie erhalten dieselbe Ausgabe).git clone
(von Github stammende) Arbeit auf dem Host, auf den Jenkins versucht, sie abzurufen? Ich vermute, dass dies nicht der Fall ist, und Sie haben wahrscheinlich ein Problem mit der Pfad-MTU-Erkennung, das durch eine kaputte Firewall verursacht wurde (die sich möglicherweise irgendwo auf dem Pfad befindet - nicht nur auf Ihrer Seite.)Antworten:
Dieses Problem scheint von selbst verschwunden zu sein, wie von einer sich schnell entwickelnden Software erwartet werden kann. Da ich dieses Problem wahrscheinlich seit ein paar Jahren nicht mehr beobachte, möchte ich mich bei demjenigen bedanken, der es behoben hat und diese Frage für obsolet hält.
Wenn Sie dieses Problem mit den neuesten Git-Versionen haben , stellen Sie möglicherweise eine separate Frage , da dies wahrscheinlich nicht dasselbe Problem ist.
quelle