web-dev-qa-db-de.com

Jenkins konnte nicht git laufen

Ich habe Jenkins auf meinem Mac (osx lion) installiert. Aber ich konnte es nicht schaffen. Dies ist der Stacktrace, den ich habe:

Started by user anonymous

Checkout:workspace / /Users/Shared/Jenkins/Home/jobs/test/workspace - [email protected]
Using strategy: Default
Checkout:workspace / /Users/Shared/Jenkins/Home/jobs/test/workspace - [email protected]
Cloning the remote Git repository
Cloning repository Origin
Error trying to determine the git version: Error performing command: /usr/local/git/ --version
Cannot run program "/usr/local/git/" (in directory "/Users/Shared/Jenkins/Home/jobs/test/workspace"): error=13, Permission denied
Assuming 1.6
ERROR: Error cloning remote repo 'Origin' : Could not clone [email protected]:iRest.git
ERROR: Cause: Error performing command: /usr/local/git/ clone -o Origin [email protected]:iRest.git /Users/Shared/Jenkins/Home/jobs/test/workspace
Cannot run program "/usr/local/git/": error=13, Permission denied
Trying next repository
ERROR: Could not clone repository
FATAL: Could not clone
hudson.plugins.git.GitException: Could not clone
    at hudson.plugins.git.GitSCM$2.invoke(GitSCM.Java:1046)
    at hudson.plugins.git.GitSCM$2.invoke(GitSCM.Java:972)
    at hudson.FilePath.act(FilePath.Java:783)
    at hudson.FilePath.act(FilePath.Java:765)
    at hudson.plugins.git.GitSCM.checkout(GitSCM.Java:972)
    at hudson.model.AbstractProject.checkout(AbstractProject.Java:1195)
    at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.Java:571)
    at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.Java:460)
    at hudson.model.Run.run(Run.Java:1404)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.Java:46)
    at hudson.model.ResourceController.execute(ResourceController.Java:88)
    at hudson.model.Executor.run(Executor.Java:238)
28

Die Lösung für mich bestand darin, den Git-Pfad in den Einstellungen unter Jage Verwalten> Globale Werkzeugkonfiguration festzulegen. Im Git-Abschnitt habe ich Path in Git-Programmdatei in /usr/local/bin/git geändert.

 Global Tool Configuration

67
Josh Brown

Sie können auch die Git-Position in der Jenkins-Server-/Knotenkonfiguration festlegen:

gehen Sie zu Konfigurieren, markieren Sie unter Abschnitt Knoteneigenschaften das Kontrollkästchen Tools Location und setzen Sie Ihren Pfad auf Git.

enter image description here

23

Es scheint, Jenkins hat sich sehr verändert. Ich habe dieses Problem im März 2017 dadurch behoben:

  1. Gehe zu Jenkins verwalten
  2. Gehen Sie zu Global Tool Configuration
  3. In Git / Path to Git executable geben Sie C:\<whatever the path is>\git.exe ein.
  4. Klicken Sie auf Speichern.
20
Andrew

Ich hatte den richtigen Weg, um in Jenkins herumzuhängen, aber ich hatte die Xcode-Build-Tools EULA bei einer Neuinstallation von OS X Yosemite noch nicht akzeptiert, also sah es so aus, als ob es in Jenkins fehlschlug. Nachdem ich "git --version" auf dem Git in/usr/bin/git in einem Terminal ausprobiert hatte, erhielt ich eine Befehlszeilenschnittstelle, um die EULA zu akzeptieren. Jenkins konnte dann auf die Git-URL zugreifen, die ich dem Build-Projekt gegeben hatte .

3
colbadhombre

Ich hatte ein ähnliches Problem, die git-ausführbare Datei unter OS X zu finden. 

Ich musste meinen Pfad in Git ausführbar ändern in:/usr/local/git/bin/git

Vielleicht geben Sie dem einen Schuss, wenn Sie noch feststecken.

1
mwopata

Ein anderes Problem, mit dem ich konfrontiert war, war, dass ssh.exe den %userprofile%/.ssh-Ordner nicht nach den Schlüsseldateien suchte. Stattdessen wurde nach dem Ordner C:\Program Files (x86)\Git\.ssh gesucht, der leer war und aufgrund der ssh-Authentifizierungsaufforderung auf dem Computer, auf dem sich git repo befand, ein Absturz verursacht. 

Wir haben gerade die Schlüsseldateien unter %userprofile%/.ssh in C:\Program Files (x86)\Git\.ssh kopiert und das Problem ist behoben.

1
mehmet6parmak

Wie Darksaint2014 sagte, müssen Sie zwei Teile konfigurieren, wenn Sie Jenkins in Windows installieren. 

Wenn Sie Ihre Jenkins in Windows installiert haben, müssen Sie Git sowohl auf dem lokalen Server als auch auf Ihrem Linux-Server installieren.


Globale Werkzeugkonfiguration:

 global tool configuration


Für Serverseite:

 For server side


1
Hailin Tan

Ich hatte ein ähnliches Problem, die Lösung für Windows sieht gleich aus (meine Jenkins sind auf einem Windows-Computer installiert):

Globale Einstellungen:

Gehen Sie zu Manage jenkins -> System konfigurieren -> Git-Installationen Fügen Sie dort den Pfad git exe hinzu (zum Beispiel: C:\Program Files\Git\bin\git.exe), oder verwenden Sie die Umgebungsvariable.

Für Jenkins Version 2.121.3 gehen Sie zu Manage jenkins -> Globale Werkzeugkonfiguration -> Git-Installationen -> Pfad zur ausführbaren Git-Datei: C:\Program Files\Git\bin\git.exe.

Jenkins Jobseite:

Gehen Sie zu Quellcodeverwaltung -> wählen Sie git aus, fügen Sie Ihr Repository hinzu, wählen Sie die Verbindung zum Repository (http/ssh).

1
amazia

Wenn Sie den vollständigen Dateipfad nicht kopieren und einfügen, fügen Sie z. C:\Program Files\Git\bin\git.exe, im Feld "Pfad zur ausführbaren Datei" bei der Konfiguration von Git kann es zu Fehlern kommen. Windows 8 und 10 verfügen beispielsweise über eine Funktion zum Kopieren von Pfaden, die wirklich funktioniert und den vollständigen Pfadnamen unterstützt. Mac sollte etwas ähnliches haben. Es ist immer am besten, dies zu verwenden, indem Sie in die Adressleiste des Pfads klicken und kopieren. Normalerweise wird nicht der vollständige Dateipfad angegeben. Dies kann zu Problemen führen, wenn Sie vergessen, den Pfad am Ziel zu bearbeiten.

Pfadkopie ist auch ein sehr gutes Add-On für das Kopieren des vollständigen Pfads 

 enter image description here

0
user7123229

Für Jenkins 2.121.3-Version gehen Sie zu Verwalten von Jenkins -> Globale Werkzeugkonfiguration -> Git-Installationen -> Pfad zur ausführbaren Git-Datei: C:\Programme\Git\bin\git.exe Es funktioniert!

Geben Sie in Jenkins die http-URL an. Die SSH-URL zeigt einen ähnlichen Fehler.

0
Sugandha Jain

Ich habe eine sehr ähnliche Fehlermeldung erhalten, als mein Jenkins-Agent Java 11 statt Java 8 ausgeführt wurde. Es hatte nichts mit der Konfiguration meines Git-Pfads zu tun! agent to Java 8 war die einzige Lösung, die ich gefunden habe.

0
Max

Umgebung: Linux Fehler: "jenkins konnte keine Verbindung zum Repository herstellen: Fehler beim Ausführen des Befehls: git ls-remote -h"

Lösung: Wenn die Repository-URL und die Anmeldeinformationen korrekt konfiguriert sind, tritt ein Problem bei der Installation und Konfiguration von Git auf. A) Stellen Sie sicher, dass Git auf Ihrem Linux-Computer installiert ist. Wenn Git nicht installiert ist, installieren Sie es ("Sudo yum install git").

0
Ezhil Arasan

Bitte installieren Sie git in Ihrem Jenkins-Server. Wenn Sie beispielsweise Red Hat Enterprise Linux als Host für Jenkins verwenden, installieren Sie git auf diesem Server mit dem folgenden Befehl: Sudo yum install git Dies sollte das Problem als git-Programm beheben wird in/usr/bin/git verfügbar sein und dies wird automatisch von jenkins erkannt. Sie können dies durch Navigieren zu Jenkins verwalten -> Globale Werkzeugkonfiguration überprüfen. Dann gibt es unter Git installation keine Warnung und Sie sollten jetzt in der Lage sein, Ihr Git-Projekt in Jenkins zu klonen. Hoffe das hilft den Usern.

0
Sharoukh Akbar

Das Hinzufügen von "/ usr/bin/git" >> Pfad zur ausführbaren Git-Datei funktionierte nicht für mich . Dann löschte ich den Inhalt von $ JENKINS_HOME/Fingerprints und startete Jenkins neu. Das Problem geht weg.

0

Falls der Jenkins einen Build auslöst, indem er die Ausführung auf einem Slave oder einem anderen Server einschränkt (Sie finden ihn möglicherweise in der Einstellung unter 'configure')

 enter image description here

dann muss die Path to Git-Programmdatei gemäß dem 'slave_server_hostname' oder einem anderen Server festgelegt werden, auf dem die git-Befehle ausgeführt werden.

0
Santosh Sindham