我正在尝试使用以下命令行将代码部署到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密钥,但仍然会出现此错误。
当前回答
只有一个命令有效:
heroku keys:add
如果它不存在的话,它会成为一个。
其他回答
dmajkic的解决方案最终帮助了我:
对于Windows用户,这可能意味着:git客户端找不到您的密钥。检查c:\Users\UserName.ssh\和!环境变量HOME=c:\Users\UserName\
我必须这样做:
$ ssh-keygen -t rsa
$ heroku keys:add
然后它奏效了:
$ git push heroku master
要遵循的顺序
$ heroku login
$ ssh-keygen -t rsa
$ heroku keys:add
当执行第二条语句时,它会要求输入,只需按Enter(回车)三次,就会添加一个键。
如果其他答案对你不起作用。试试这个!
有时候,你只需要再推一次。由于网络连接缓慢(当您下载或使用p2p时),我今天遇到了这种情况。
请参见下面的截图:
在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生成公钥后,只需查看创建时的时间戳,即可验证是否添加了正确的密钥。