Heroku“权限被拒绝(publickey)致命错误:无法从远程仓库读取”的困扰

148
我花了好几个小时搜索解决我的问题,这个问题理应很容易解决,但我却无法从我的Mac通过push、pull或fetch到Heroku repository。每次尝试都会给我以下错误信息:“Permission denied (publickey). fatal: Could not read from remote repository.'” 我尝试过许多不同的方法,甚至删除了Heroku上的应用并重新创建了一个,但始终没有解决问题。我可以从GitHub存储库中获取内容,因此我知道这不是网络连接问题。我已经登录到我的Ubuntu Amazon AWS ec2实例中,从那里轻松地拉取和推送到Heroku。出于这个原因,我仍然觉得问题在于我的Mac上的ssh密钥。这两个密钥都显示在我的Heroku帐户下。请问,密钥末尾的电子邮件地址是否有影响?最后,我想尝试任何可能解决问题的方法,谢谢!

你有为你的Heroku密钥设置密码吗?我猜这个(https://dev59.com/qHLYa4cB1Zd3GeqPZIsM#16753800)没有帮助?或者再检查一下https://dev59.com/qHLYa4cB1Zd3GeqPZIsM#16753800。 - VonC
很遗憾,它仍然无法工作。 - thebradbain
有时候当Heroku正在维护时会出现这种情况:https://status.heroku.com/。 - Mavis
14个回答

1

我使用这种方法来解决这个问题,也许你可以尝试一下

"启用ssh-agent"

  1. 下载git

http://git-scm.com/

  1. 安装它

  2. 启用ssh-agent

C:\Program Files\Git\cmd

start-ssh-agent

当我启用代理后,消息会消失 希望这能帮到你


0

我曾经遇到过类似的heroku ssh错误,但是无法解决。

作为一种解决方法,我使用了新的heroku http-git功能(http传输代替ssh的“heroku”远程)。详情请参见:https://devcenter.heroku.com/articles/http-git

(简短版本:如果您已经按照标准方式设置了项目,请运行heroku git:remote --http-init以将“heroku”远程更改为http。)

如果您没有时间修复/排除ssh问题,这是一个很好的快速解决方法。


在我的情况下,问题似乎与ssh远程路径中的“:”有关。(适用于Windows的Git 1.9.4。)由于某种原因,ssh://git@host:repo无法成功执行“致命错误:无法从远程存储库读取”,而ssh://git@host/repo则可以成功执行。 - FullTimeCoderPartTimeSysAdmin

0

我也遇到了同样的问题,并尝试按照大家说的重置密钥,但仍然无法解决。原来是因为我重命名了应用程序。

所以我做的是从控制台重置我的密钥并重新命名应用程序。查看此问题以获取更多信息:Heroku push app problem


0

非常简单的解决方案,前往 c:/Users/user_name/.ssh/ 并删除所有公钥/私钥对,这样 Heroku 将为您生成新的密钥。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接