2011-11-30 4 views
5

Non posso per la vita di me sembrare che il mio Jenkins CI funzioni con Github.Jenkins non sta giocando bene con un repository GitHub privato (Windows)

Avevo un errore nel comando clone, ma era dovuto alle chiavi, quindi ho effettuato l'accesso come account di servizio (l'utente Jenkins viene eseguito come servizio Windows) e ha eseguito il comando clone. Tutto bene nel cappuccio.

Tuttavia, quando voglio eseguire il recupero per ottenere l'ultimo, non finirà. Si siede proprio lì. Ho provato tramite il plugin Git per Jenkins e anche tramite uno script della riga di comando di Windows. Né lavoro. Tuttavia, se apro un prompt dei comandi e digito il comando, funziona!

Quindi, come faccio a farlo funzionare tramite Jenkins?

ho eseguire questo script:

set 
"C:\Program Files (x86)\Git\bin\git.exe" fetch -t ssh://[email protected]/OrgName/MyRepo.git +refs/heads/*:refs/remotes/origin/* 
exit 0 

e si attacca sul comando fetch, mai uscire.

Qualcuno ha qualche suggerimento?

+0

Perché stai utilizzando l'URL ssh? Dovrebbe funzionare bene con 'git: // github.com/OrgName/MyRepo.git' a meno che Jenkins non debba commettere qualcosa. –

+0

Se utilizzo il tuo URL, sembra che non tenterà di utilizzare le chiavi SSH che ho configurato. Continuo a ricevere l'errore "Fatal: remote end hang up" – CamronBute

+0

ah, stai utilizzando un repository privato? –

risposta

4

Sembra che msysGit sia bloccato cercando di trovare uno dei suoi componenti, utilizzato durante l'operazione di recupero.

Git non è un singolo eseguibile in realtà. È un insieme di piccoli strumenti che fanno il loro lavoro alla grande solo mettendo insieme. L'esecuzione di Git su Windows dal prompt di bash lo rende possibile, ma quando si esegue tramite il prompt dei comandi di Windows o in file batch, la Force potrebbe non essere con voi.

Penso che dovresti controllare dove hai installato msysGit con l'opzione "Esegui Git da Prompt dei comandi di Windows". In questo caso tutte le parti necessarie di Git saranno aggiunte al sistema variabile PATH e git.exe sarà in grado di accedervi da file batch, quindi dovrebbe correggere la tua istruzione fetch.

+0

Il problema è che ho installato l'opzione "Esegui da Bash" invece di "Esegui da riga di comando di Windows". Una volta aggiunte le variabili di ambiente necessarie, ha funzionato come un fascino, ma solo quando creo uno script da recuperare. Comunque, mi piace così, quindi lo lascerò. Grazie! – CamronBute

+0

@CamronBute è una buona forma per revocare una risposta se risolve il problema ;-) –