当我heroku login
在我的机器上尝试通过 cmd 时,它说
找不到现有的公钥
你想生成一个吗?[YN]
之后,当我按“y”并输入时,它说
生成新的 ssh 公钥
无法生成密钥:“ssh-keygen”不被识别为内部或外部命令可运行程序或批处理文件
请帮我。
当我heroku login
在我的机器上尝试通过 cmd 时,它说
找不到现有的公钥
你想生成一个吗?[YN]
之后,当我按“y”并输入时,它说
生成新的 ssh 公钥
无法生成密钥:“ssh-keygen”不被识别为内部或外部命令可运行程序或批处理文件
请帮我。
Heroku 工具带包含 git 分发,其中包含所需的 ssh-keygen.exe 。我刚刚在 C:\Program Files\git\bin 找到它。找到您的 git 文件夹并将其添加到您的系统路径中,如下所述:superuser.com/questions/284342/
我有同样的问题,刚刚解决了。我安装了另一个名为 Git Bash 的 CMD,您可以免费下载它(http://git-scm.com/downloads),然后重复其中的命令,它就成功了!
对于 Win7 64 位用户,该文件%HerokuPath%s\bin\ssh-keygen.bat
如下所示:
@SETLOCAL
@SET HOME=%USERPROFILE%
@"%HerokuPath%\..\Git\bin\ssh-keygen.exe" %*
但是 Heroku 将 Git 安装在 中Program Files (x86)
,因此如果您将.bat
文件更新为:
@SETLOCAL
@SET HOME=%USERPROFILE%
@"C:\Program Files (x86)\Git\bin\ssh-keygen.exe" %*
然后你应该能够生成你的 ssh 密钥。
视窗 10-64 位
我已经安装了 git,然后是 heroku toolbelt(我认为它重新安装了 git)
我有C\Program Files (x86)\Heroku\bin
我的环境变量(可能是在我安装 heroku 工具带时生成的),如果我查看那个文件路径,我有一个 ssh-keygen.bat - 所以看起来我应该能够ssh-keygen -t rsa
从命令行运行。
那太容易了,相反我得到:
C:\Program Files (x86)\Git\bin>ssh-keygen -t rsa -f id_rsa
'"C:\Program Files (x86)\Heroku\..\Git\bin\ssh-keygen.exe"' is not recognized as an internal or external command,
operable program or batch file.
解决方案
输入bash
命令行进入 git bash 模式然后运行ssh-keygen -t rsa
混帐巴什:
mamwo@DESKTOP-9GVG6K8 MINGW32 /bin
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/mamwo/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/mamwo/.ssh/id_rsa.
Your public key has been saved in /c/Users/mamwo/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:MMMYYYPPPUUUBBBLLIIICCKKEEEEYYYY mamwo@DESKTOP-9GVG6K8
The key's randomart image is:
现在,当我查看 C/User/mamwo/.ssh(对我来说最好的方法是通过 pycharms 文件夹 - Windows 很烂)时,我看到了我的 id_rsa 和 id_rsa.pub
但是这个“无法生成公钥”问题对我来说都是开始的,因为当我将我的仓库(从 github)克隆到一台新计算机并发现我可以推送到 github 时,我遇到了一个“我没有要添加的公钥”的问题,但是不是heroku。
现在我有了钥匙 - 我必须添加它们
C:\Users\mamwo\Desktop\mv>git push heroku master
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
C:\Users\mamwo\Desktop\mv>heroku keys
You have no keys.
C:\Users\mamwo\Desktop\mv>heroku keys:add
Found an SSH public key at C:/Users/mamwo/.ssh/id_rsa.pub
Would you like to upload it to Heroku? [Yn]