命令行Git不识别使用GitHub for Windows生成的密钥

时间:2016-12-03 20:30:53

标签: windows git github ssh

我已经为Windows设置了GitHub,并用它来创建与我的帐户关联的SSH密钥。我可以在GitHub for Windows GUI中执行git操作,但是当我尝试在git clone git@github.com:whatever.git之类的命令提示符中运行命令时,我收到如下错误:

C:\Users\Nat\Documents\GitHub>git clone git@github.com:natdempk/whatever.git
Cloning into 'whatever'...
Permission denied (publickey).
fatal: Could not read from remote repository.

为什么一切都在GitHub for Windows GUI上运行?

1 个答案:

答案 0 :(得分:2)

当GitHub for Windows创建密钥时,它们被命名为github_rsagithub_rsa.pubgit默认情况下要将密钥命名为id_rsaid_rsa.pub,因此它无法从GitHub for Windows中找到密钥,并且会为您提供Permission denied (publickey)。要解决此问题,您应该为github.com创建一个SSH配置文件C:\users\<username>\.ssh\config,如下所示:

Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github_rsa

这会在执行连接到git的操作时通知github.com使用生成的GitHub for Windows键。