2011-11-16 12 views
12

Searching google per +github +ssh "no address associated with name" ha pronunciato la seguente SO domande come i 4 primi risultati:"nessun indirizzo associato con il nome" quando la clonazione di pronti contro termine di github.com sotto Windows usando ssh

github no address associated with name
Github push origin master not working
Syncing with github
GITHUB setup - no address associated with name

Nessuno di loro dà risposta al mio problema, però.

c:\Program Files (x86)\Git\bin>git --version 
git version 1.7.7.1.msysgit.0 

c:\Program Files (x86)\Git\bin>ssh [email protected] 
Enter passphrase for key '/c/Users/Piotr/.ssh/id_rsa': 
Hi piotr-dobrogost! You've successfully authenticated, but GitHub does not provide shell access. 
Connection to github.com closed. 

c:\Program Files (x86)\Git\bin>git clone ssh://[email protected]:piotr-dobrogost/requests.git 
Cloning into requests... 
ssh: github.com:piotr-dobrogost: no address associated with name 
fatal: The remote end hung up unexpectedly 

Credo che il problema è causato da git passaggio github.com:piotr-dobrogost come il nome dell'host per ssh invece solo github.com solo. Perché git fa questo e qual è la soluzione?

+0

Non ci dovrebbe essere una colonna dopo github.com, ma piuttosto un percorso (relativo all'account utente git o percorso assoluto). Così hai provato a 'git clone ssh: // git @ github.com/piotr-dobrogost/requests.git' funziona meglio? Oppure 'git clone ssh: // git @ github.com/home/piotr-dobrogost/requests.git'? – VonC

+0

'git clone ssh: // git @ github.com/piotr-dobrogost/requests.git' funziona e' git clone ssh: // git @ github.com/home/piotr-dobrogost/requests.git' restituisce ' ERRORE: errore del repository non trovato. Tuttavia, l'url con due punti è dato da github come * ufficiale *. Perché non funziona? –

risposta

21

Hai risposto da solo: il problema è che stai passando github.com:piotr-dobrogost come nome host, che in realtà non è un nome host valido. git capirà sia URL propri di un repository, o un percorso di repository in formato SCP (. vedi man 1 scp) Per una corretta URL, provare:

git clone ssh://[email protected]/piotr-dobrogost/requests.git 

che è equivalente al seguente in formato percorso SCP:

git clone [email protected]:piotr-dobrogost/requests.git 
+0

Github fornisce '[email protected]: piotr-dobrogost/requests.git' (con due punti) come url da usare con ssh. Entrambi 'git clone ssh: // git @ github.com/piotr-dobrogost/requests.git' e' git clone [email protected]: piotr-dobrogost/requests.git' funzionano ma non 'git clone ssh: // [email protected]: Piotr-Dobrogost/requests.git'.Perché git gestisce i due punti quando si usa url senza lo schema 'ssh' e non si gestisce quando si usa url con lo schema' ssh'? –

+2

Poiché 'ssh: //[email protected]: username/repo' non è in realtà un URL equivalente a' ssh: // git @ github.com/username/repo'. '[email protected]: username/repo' non è affatto un URL - è nel formato di SCP user @ host: tipo di argomento del file (vedi' man 1 scp'), che il client git traduce nel formato corretto . –

+0

Potresti aggiungere informazioni su git usando il formato scp alla tua risposta? Grazie. –

4

Ho avuto lo stesso problema, ed è risultato che era un problema DNS. Le impostazioni DNS erano errate e le macchine semplicemente non potevano raggiungere il repository git remoto.

0

Sto eseguendo un server git privato con un indirizzo assegnato da DHCP; questo indirizzo sembra rimanere statico. Di tanto in tanto, l'autenticazione con l'host remoto fornisce l'errore "nessun indirizzo associato a questo nome".

Tuttavia, posso modificare il file known_hosts per il mio cliente (che per me risiede in C: \ Users \ MyUserName \ .ssh \ known_hosts) ed eliminare la riga che fa riferimento al server git privato:

gitserver.local,10.0.0.10 ssh-rsa AAAABCAAAA.... 

Quindi mi connetto di nuovo al server Git ed emetto una richiesta di pull. Questa volta, git chiede se memorizzare nella cache la chiave SSH e il pull si conclude correttamente, senza l'errore "nessun indirizzo associato al nome".

Quindi, ho il sospetto che qualcosa sulla chiave RSA o su come quella chiave si riferisca al DNS, si sta facendo incavolare. Se nient'altro dà gioia, prova a cancellare manualmente e a reinstallare automaticamente la chiave RSA sul client. Questo non dovrebbe funzionare, ma sembra funzionare nel mio caso. Non ho idea chiara del motivo per cui dovrebbe essere così.

Problemi correlati