使用ssh在Windows下克隆github.com的repo时,“没有与name关联的地址”错误

时间:2011-11-16 22:17:10

标签: windows git ssh github

Searching google for +github +ssh "no address associated with name"提供以下SO问题作为4个最佳结果:

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

但他们都没有回答我的问题。

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

c:\Program Files (x86)\Git\bin>ssh git@github.com
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://git@github.com:piotr-dobrogost/requests.git
Cloning into requests...
ssh: github.com:piotr-dobrogost: no address associated with name
fatal: The remote end hung up unexpectedly

我猜这个问题是由git传递github.com:piotr-dobrogost作为ssh的主机名而不仅仅是github.com引起的。为什么git会这样做,解决方案是什么?

3 个答案:

答案 0 :(得分:21)

你自己回答了 - 问题是你传递github.com:piotr-dobrogost作为主机名,实际上这不是有效的主机名。 git将理解存储库的正确URL或SCP格式的存储库路径(请参阅man 1 scp。)要获得正确的URL,请尝试:

git clone ssh://git@github.com/piotr-dobrogost/requests.git

这与SCP路径格式中的以下内容相同:

git clone git@github.com:piotr-dobrogost/requests.git

答案 1 :(得分:4)

我遇到了同样的问题,结果却是DNS问题。 DNS设置错误,机器无法访问远程git存储库。

答案 2 :(得分:0)

我正在运行一个私有git服务器,其地址由DHCP分配;这个地址似乎保持不变。有时,使用远程主机进行身份验证会出现“与此名称无关的地址”错误。

但是,我编辑了我的客户端的known_hosts文件(我驻留在C:\ Users \ MyUserName \ .ssh \ known_hosts)并删除引用私有git服务器的行:

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

然后我再次连接到git服务器并发出拉取请求。这次,git询问是否缓存SSH密钥并且pull结束成功,没有“no name with name”错误。

因此,我怀疑RSA密钥的某些内容,或者该密钥与DNS的关系,正在被搞砸。如果没有别的东西可以带来快乐,请尝试手动删除并自动在客户端上重新安装RSA密钥。这实际上不应该工作,但它似乎适用于我的情况。我不清楚为什么会这样。