Could not generate ssh public key for heroku in Windows 7

前端 未结 4 1397
不知归路
不知归路 2021-02-12 01:55

While I am trying heroku login through cmd in my machine, it says

Could not find existing public key
Would you like to generate one? [

相关标签:
4条回答
  • 2021-02-12 02:05

    Heroku toolbelt includes git distribution which includes the required ssh-keygen.exe . I've just found it in C:\Program Files\git\bin . Locate your git folder and add it to your system path as described here: superuser.com/questions/284342/

    0 讨论(0)
  • 2021-02-12 02:08

    Windows 10-64bit

    I had installed git, then heroku toolbelt (which I think reinstalled git)

    I had C\Program Files (x86)\Heroku\bin in my Environmental variable (probably generated when I installed heroku toolbelt) and if I looked in that filepath I had an ssh-keygen.bat - so it seemed like I should be able to just run ssh-keygen -t rsa from the command line.

    That would be too easy, instead I get:

    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.
    

    Solution

    type bash in command line to go into git bash mode then run ssh-keygen -t rsa

    git bash:

    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:
    

    Now when I look in C/User/mamwo/.ssh (the best way for me is through pycharms folder - windows sucks) I see my id_rsa and id_rsa.pub

    But this 'cannot generate publickeys' issue all started for me because I had an 'I don't have public keys to add' issue when I cloned my repo (from github) to a new computer and found that I could push to github but not heroku.

    Now that I have the keys - I have to add them

    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]
    
    0 讨论(0)
  • 2021-02-12 02:11

    For Win7 64-bit users, the file %HerokuPath%s\bin\ssh-keygen.bat looks like:

    @SETLOCAL
    @SET HOME=%USERPROFILE%
    @"%HerokuPath%\..\Git\bin\ssh-keygen.exe" %*
    

    But Heroku installs Git in Program Files (x86), so if you update the .bat file to:

    @SETLOCAL
    @SET HOME=%USERPROFILE%
    @"C:\Program Files (x86)\Git\bin\ssh-keygen.exe" %*
    

    Then you should be able to generate your ssh keys.

    0 讨论(0)
  • 2021-02-12 02:15

    I had the same problem and just solved it. I installed another CMD called Git Bash that you can download for free (http://git-scm.com/downloads) and then repeated the commands in that and it worked!

    0 讨论(0)
提交回复
热议问题