2011-12-26 12 views
23

He instalado Jenkins en mi mac (osx lion). Pero no pude hacer que funcione. Esta es la StackTrace Tengo:Jenkins no pudo ejecutar git

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) 
+4

Espero que su git esté en '/ usr/local/bin/git' en lugar de'/usr/local/git'. ¿Podrías comprobar eso? –

+0

Tiene razón, es –

+1

Y http://stackoverflow.com/questions/6810059/git-on-mac-os-x-lion puede ayudar también – VonC

Respuesta

59

La solución para mí fue establecer la ruta de git en la configuración Administrar Jenkins> Configurar sistema. En la sección de Git, cambié el del ejecutable de Path to Git al /usr/local/bin/git.

+7

para obtener la ruta real, puede escribir "which git" en la línea de comando para ver el directorio real. Este valor predeterminado puede variar si está en Mac mini o mac mini os. – ssinganamalla

+1

Esta solución también funciona para Windows. – look

+4

funciona, por ejemplo, mi ruta era como esta C: \ Archivos de programa (x86) \ Git \ bin \ git.exe –

18

También se puede establecer la ubicación de Git en la configuración del servidor/nodo Jenkins:

Goto Configurar, en la sección Propiedades del nodo casilla marca de herramientas de búsqueda y configurar el suyo camino a Git.

enter image description here

+0

La "Respuesta aceptada" anterior debe incluir esta imagen. ¡Las dos respuestas combinadas fueron muy, muy útiles para mí! Gracias – Darksaint2014

+0

Esta es una gran solución para aquellos que usan nodos – JJacquet

1

tuve un problema similar encontrar el ejecutable git en OS X.

que tenía que cambiar mi Ruta al ejecutable Git a: /usr/local/git/bin/git

Podría dar una oportunidad si todavía está atascado.

1

Otro problema con el que me enfrenté fue que ssh.exe no estaba buscando en la carpeta %userprofile%/.ssh los archivos de las claves. En su lugar, estaba mirando a la carpeta C:\Program Files (x86)\Git\.ssh que estaba vacía y que causa un bloqueo debido a la solicitud de autenticación ssh en la máquina donde se encuentra git repo.

Acabamos de copiar los archivos de clave bajo %userprofile%/.ssh a C:\Program Files (x86)\Git\.ssh y el problema está resuelto.

3

Tenía la ruta correcta de Git en Jenkins, pero todavía no había aceptado las herramientas de construcción de Xcode EULA en una nueva instalación de OS X Yosemite, por lo que git parecía que estaba fallando en Jenkins. Después de probar "git --version" en el git en/usr/bin/git en una terminal, me dieron una interfaz de línea de comandos para aceptar el EULA, y luego Jenkins pudo acceder a la URL de git que le había dado al proyecto de construcción .

1

tenían problema similar, solución para las ventanas se ve el mismo (mis Jenkins instalados en la máquina Windows):

ajustes globales:

vaya a Administrar Jenkins -> Configuración del sistema -> instalaciones Git add allí la ruta de acceso de git exe (por ejemplo: C: \ Archivos de programa \ Git \ bin \ git.exe), o puede usar la variable de entorno.

Jenkins lado de empleo:

Ir a la fuente de gestión de código -> seleccione git, añadir el repositorio, elija la conexión al repositorio (http/ssh) y añadir credenciales y debería funcionar.

0

Si no copia y pega la ruta de acceso del archivo completa, p. C:\Program Files\Git\bin\git.exe, en el campo 'ruta al ejecutable' al configurar Git, puede provocar errores. Windows 8 & 10 por ejemplo, tiene una funcionalidad de "copia de ruta" que realmente funciona y ayuda a obtener el nombre completo de la ruta. Mac debería tener algo similar. Siempre es mejor usar eso en lugar de hacer clic en la barra de dirección de la dirección de ruta y copiar. Esto generalmente no proporciona la ruta completa del archivo y puede causar muchos problemas si olvida editar la ruta en su destino.

Path copycopy es también muy buena complemento para copiar ruta completa

enter image description here

13

Parece Jenkins ha estado cambiando mucho. He arreglado este problema en de marzo de 2017 hacer esto:

  1. vaya a Administrar Jenkins
  2. Ir a la configuración global de la herramienta
  3. En Git/Path to Git executable entrar C:\<whatever the path is>\git.exe.
  4. Haga clic en Guardar.
Cuestiones relacionadas