我正在尝试使用以下命令行将代码部署到heroku:
git push heroku master
但会出现以下错误:
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
我已经上传了我的公共SSH密钥,但仍然会出现此错误。
我正在尝试使用以下命令行将代码部署到heroku:
git push heroku master
但会出现以下错误:
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
我已经上传了我的公共SSH密钥,但仍然会出现此错误。
当前回答
对于那些在Windows7上尝试了上述所有方法但仍然没有成功的人,我做了以下工作:-从Git目录C:\Program Files(x86)\Git\中打开GitBash.exe(不要打开命令提示符,这不起作用)。-如上所述添加以下内容,但必须删除#
Host heroku.com
Hostname heroku.com
Port 22
IdentitiesOnly yes
IdentityFile ~/.ssh/ssh-dss
TCPKeepAlive yes
User joe@workstation.local
现在运行gitpushherokumaster,它应该可以工作了。
其他回答
在Windows 7,64位上,上面的解决方案(Onur Turhan的)对我很有效,有如下细微变化
C:\Users\MyName > heroku login
输入电子邮件/密码
C:\Users\MyName >ssh-keygen -t rsa -f id_rsa
这在我的c:\Users\MyName目录(不在.ssh目录中)中生成了两个文件(id_rsa和id_rsa.pub)
heroku keys:add id_rsa.pub
git clone git@heroku.com:some-heiku-xxxx.git -o heroku
我想添加正确的“id_rsa.pub”文件是最重要的。在使用keygen生成公钥后,只需查看创建时的时间戳,即可验证是否添加了正确的密钥。
听起来您的~/.ssh/authorized_keys文件设置不正确。验证:
它在正确的路径上。文件的权限为0600。~/.ssh的权限为0700。
我也遇到了同样的问题;以下步骤将有助于:
首先,登录:heroku登录清除所有键:heroku键:清除删除.ssh/文件夹中本地文件夹中的所有文件(所有.pub文件和know_host)再次登录:heroku login-u将无需按键提示,因此请按照屏幕上的说明进行操作。
推对我很有效,然后突然停了下来。
如果heroku api正在经历宕机,那么当您尝试推送时会出现此错误。
检查:
https://status.heroku.com/
在极度紧张之前。
我必须这样做:
$ ssh-keygen -t rsa
$ heroku keys:add
然后它奏效了:
$ git push heroku master