Ruby on rails Heroku:权限被拒绝(公钥)。致命:执行git推送时无法从远程存储库读取

Ruby on rails Heroku:权限被拒绝(公钥)。致命:执行git推送时无法从远程存储库读取,ruby-on-rails,git,heroku,Ruby On Rails,Git,Heroku,我花了一天的时间回顾了Stackoverflow和其他网站上建议的所有现有解决方案,并尝试了它们,但没有成功,我仍然坚持这一点。 添加解决方案对我不起作用,所以请不要将我链接回该解决方案 我在MacOSX Lion上。谢谢如果您已经初始化了git,并且heroku toolbet已完全安装,请输入此命令$git remote-v,它将初始化heroku git,您可以将其推入。无论何时运行命令$git remote-v,都将在app_name/.git/logs//refs/remote/her

我花了一天的时间回顾了Stackoverflow和其他网站上建议的所有现有解决方案,并尝试了它们,但没有成功,我仍然坚持这一点。 添加解决方案对我不起作用,所以请不要将我链接回该解决方案


我在MacOSX Lion上。谢谢

如果您已经初始化了git,并且heroku toolbet已完全安装,请输入此命令$git remote-v,它将初始化heroku git,您可以将其推入。

无论何时运行命令$git remote-v,都将在app_name/.git/logs//refs/remote/heroku中创建git repo,首先检查你的git是否已经为heroku初始化,即使我有同样的问题,我已经纠正了

Heroku不再需要使用git协议&公共/私有加密密钥,您可以使用以下命令来使用Heroku API密钥

heroku登录

此命令使用Heroku API密钥创建或更新~/.netrc文件

现在,任何Heroku远程存储库都可以通过https协议而不是git ssh协议推送到

通过以下方式检查项目的Heroku存储库地址:

git远程-v

如果Heroku的git远程地址以https://git.heroku.com/... 那你就可以推了。如果远程地址以git开头,那么您需要更新Heroku的远程地址

git远程设置url herokuhttps://git.heroku.com/...

检查应用程序的选项卡以获取该应用程序的完整Git URL


可以考虑其他解决方案,然后清除现有密钥并向heroku重新添加正确的密钥:如果您可以列出您遵循的步骤,那就太好了。我已经尝试了所有操作:我删除了.ssh目录中的所有文件,我做了一个heroku密钥:清除,然后我使用ssh keygen-t rsa重新生成了一个密钥,然后使用heroku键:add将该键再次添加到heroku。它仍然会产生相同的错误。。。令人恼火的是,当我做ssh-v的时候git@heroku.com,它表明我已正确身份验证:debug1:身份验证成功公钥。最后我收到一条错误消息,上面说:PTY分配请求在通道0try$ssh add上失败,然后登录到heroku和pushI,但仍然收到相同的错误消息。git remote-v仅显示连接到本地存储库的远程存储库的完整路径。检查您是否连接了Heroku远程存储库可能会很有用,但仅此而已。但它以前是工作的。我过去推了200多下。我不知道为什么它会突然改变。在我的例子中,参数化的地址是这样的:ssh://heroku.com/myproject.git/br但是你的方法确实有效,你救了我一天!我不明白为什么Heroku没有发出更多警告,也没有向用户提供详细的步骤。你不能贬低这些方法,让人们像这样浪费时间。