對Heroku的SSH公鑰雖然我在我的機器試圖通過heroku login
CMD,它說無法生成在Windows 7
找不到存在的公共密鑰
你想生成一個? [YN]
後,當我按「Y」,進入它說
生成新的SSH公鑰
無法生成密鑰:「SSH-凱基」未被識別爲一個內部或外部命令可操作程序或批處理文件
請幫幫我。
對Heroku的SSH公鑰雖然我在我的機器試圖通過heroku login
CMD,它說無法生成在Windows 7
找不到存在的公共密鑰
你想生成一個? [YN]
後,當我按「Y」,進入它說
生成新的SSH公鑰
無法生成密鑰:「SSH-凱基」未被識別爲一個內部或外部命令可操作程序或批處理文件
請幫幫我。
Heroku toolbelt包含git分發包含所需的ssh-keygen.exe。我剛剛在C:\ Program Files \ git \ bin中找到它。找到您的git文件夾並將其添加到您的系統路徑中,如下所述:superuser.com/questions/284342/
根據對另一個答案的評論,並且由於這是最有利的(因爲它是正確的),所以我會注意到:如果使用** git bash ** CLI使用'heroku auth:login'登錄到heroku ,你將能夠生成一個SSH密鑰。如果你使用相同的命令在窗口上使用普通的'cmd' shell,你需要在你的PATH中包含你的Git目錄;這種行爲的原因是因爲,根據[另一個評論](http://stackoverflow.com/questions/11771378/ssh-keygen-is-not-recognized-as-an-internal-or-external-command/ 11771907#comment23206229_11771907),Git bash在運行時設置PATH。 – 2014-04-22 08:26:32
@ChrisCirefice謝謝! – 2014-08-07 19:14:04
在我的情況下Win 10它位於C:\ Program Files \ Git \ usr \ bin! – CodeToLife 2017-04-27 11:15:48
我遇到了同樣的問題,只是解決了它。我安裝了另一個叫做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密鑰。
的Windows 10-64bit
我已經安裝的git,然後Heroku的工具區(我認爲重新安裝GIT)
我在環境變量(當我安裝的Heroku工具區可能產生的)有C\Program Files (x86)\Heroku\bin
,如果我在那個文件路徑中查看我有一個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
在命令行進入混帳bash的模式,然後運行ssh-keygen -t rsa
混帳bash:
[email protected] 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 [email protected]
The key's randomart image is:
現在,當我查看C/User/mamwo/.ssh(對我來說最好的方式是通過pycharms文件夾 - windows sucks),我看到了我的id_rsa和id_rsa。酒吧
但是這'不能生成publickeys'問題都開始爲我,因爲我有一個'我沒有公鑰添加'問題,當我克隆我的回購(從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]
看到這個以前的答案:http://stackoverflow.com/a/11771907/538746 – 2013-02-22 07:04:03
@ user2098336它會選擇很重要該解決方案解決了您的麻煩,以幫助其他程序員將來面臨同樣的問題! – 2013-09-24 11:04:59