如果我通过ssh运行'git push'然后输出'Permission denied(publickey)'

时间:2012-08-18 06:47:25

标签: ssh github

我像这样设置./git/config文件。

[remote "origin"]
    url = https://github.com/haradashinya/dotfiles.git

它推送了我的github的存储库,但它要求我的用户名和密码。所以,我将我的网址设置为ssh样式,如下所示:

url = git@github.com:haradashinya/dotfiles.git

但是它会输出一条错误消息“Permission denied(publickey)”。

为什么会这样?

3 个答案:

答案 0 :(得分:1)

即使您已经定义了ssh密钥,也需要确保定义了HOME(例如,在Windows上不是这种情况,除非您使用msysgit附带的git-cmd.bat中的DOS会话):请参阅“Trying to “install” github, .ssh dir not there”。

在同一个HOME目录中,如果您仍想使用https地址,还可以记录您的https GitHub凭据(用户名和密码):有关示例,请参阅“change github account mac command line”。

答案 1 :(得分:0)

您需要在此处将您的SSH密钥添加到您的github帐户:https://github.com/settings/ssh

如果您尚未生成SSH密钥,或者您不知道如何生成SSH密钥,或者您不了解如何将其添加到您的github帐户,github会在此处提供详细说明:{{3 }}

答案 2 :(得分:0)

我已按照https://help.github.com/articles/error-permission-denied-publickey说明操作。

我通过ssh-add'my-id-rsa-path'命令解决了我的问题。

ssh-add ~/.ssh/id_rsa; ssh -vT git@github.com #-> success!

感谢您的帮助!