请原谅一点挫折,我会尽力控制,因为Heroku使用SO作为他们的客户支持(我认为至少可以说是粗制滥造).
在过去的五个小时里,我一直试图让应用程序发布,但键总是出现问题.我已经阅读了几十篇文章并尝试了提示,以便找出Heroku正在搞砸的愚蠢,完全不透明的过程.
我的用例并不困难:我为我的heroku应用程序创建了一个新的密钥对.我已将该密钥设为我的密钥:
  > heroku keys
  === travis@xxxx.com Keys
  ssh-rsa AAAAB3NzaC...avOqfA7ZBd travis@xxxx.com
我可以登录并"创建"一个应用程序(愚蠢的名称,因为它似乎是创建一个git仓库,而不是任何类型的应用程序)没有问题.但是,每一个*吓坏*时间我试图把我的应用程序,我得到:
  > git push heroku master
  Permission denied (publickey).
  fatal: The remote end hung up unexpectedly
我对WTF没有任何见解正在进行中; 我只是在没有追索权的情况下将头撞在键盘上,而是希望Google的全能之神能够回答它.谷歌没有回答它(好吧,让我把它拿回去,我已经看到了十几种方法来回答这个问题).
对于一个应该很容易的系统,这是一个笑话.我喜欢Heroku的想法,但在拿走五个我们完全没有做的事之后,我想也许这是错误的选择.
jqu*_*ana 149
网络上有各种各样的解决方案.我将尝试将可用选项压缩到一个帖子中.请在每一步后再次尝试连接.
第1步:尝试将公钥添加到Heroku
heroku keys:add ~/.ssh/id_rsa.pub // or just heroku keys:add and it will prompt you to pick one of your keys
步骤2:生成一组新的SSH密钥,然后再次尝试第一步
第3步:验证和/或修改配置文件
vim ~/.ssh/config
Host heroku.com
Hostname heroku.com 
Port 22 
IdentitiesOnly yes 
IdentityFile ~/.ssh/id_rsa    <--- Should be your public SSH key
TCPKeepAlive yes 
User jsmith@gmail.com
第4步:从git中删除heroku远程,重新创建连接,通过heroku create添加远程只会是新存储库的选项.请务必删除您最初尝试创建的旧仓库
 $ git remote rm heroku
 $ heroku create
第5步:重新安装Heroku Toolkit
Rob*_*ian 13
您的heroku密钥和github密钥不同步.
确定要使用的密钥(建议创建一个新密钥,即heroku_rsa).
将密钥添加到github.
使用以下命令将相同的密钥添加到heroku:heroku keys:add
我遇到了同样的问题,这是我对发生的事情的理论:
我很久以前就注册了 Heroku,给了他们我的 github 公钥。当尝试通常的操作时git push heroku master,它会寻找我的私钥,在 处找到~/.ssh/github_rsa。然后它会默默地失败并显示您发布的消息。
但是,我后来尝试ssh使用该标志来进入另一台服务器-i来指定我的“身份文件”(即私钥),它提示我输入私钥的密码。“解锁”私钥后,该git push heroku master命令即可工作。一些结论:
ssh会提示您输入身份文件的密码,git但不会。ssh,它将保持解锁状态以供您git使用。keytool。