web-dev-qa-db-fra.com

Impossible de générer la clé publique ssh pour heroku dans Windows 7

Pendant que j'essaie heroku login par cmd dans ma machine, il est dit

Impossible de trouver la clé publique existante
Voulez-vous en générer un? [ON]

Après cela, lorsque j'appuie sur 'y' et que j'entre, cela dit

Génération d'une nouvelle clé publique ssh
Impossible de générer la clé: "ssh-keygen" n'est pas reconnu comme un programme exécutable par commande interne ou externe ou un fichier de commandes

Aidez-moi, s'il vous plaît.

31
Suman Sapkota

La ceinture d'outils Heroku inclut la distribution git qui inclut le ssh-keygen.exe requis. Je viens de le trouver dans C:\Program Files\git\bin. Localisez votre dossier git et ajoutez-le à votre chemin système comme décrit ici: superuser.com/questions/284342/

34
stys

J'ai eu le même problème et je l'ai juste résolu. J'ai installé un autre CMD appelé Git Bash que vous pouvez télécharger gratuitement ( http://git-scm.com/downloads ), puis j'ai répété les commandes et cela a fonctionné!

16
GER

Pour les utilisateurs de Win7 64 bits, le fichier %HerokuPath%s\bin\ssh-keygen.bat Ressemble à:

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

Mais Heroku installe Git dans Program Files (x86), donc si vous mettez à jour le fichier .bat Vers:

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

Vous devriez alors pouvoir générer vos clés ssh.

1
Steve Eynon

Windows 10-64bit

J'avais installé git, puis heroku toolbelt (que je pense avoir réinstallé git)

J'avais C\Program Files (x86)\Heroku\bin dans ma variable d'environnement (probablement générée lorsque j'ai installé la ceinture d'outils Heroku) et si je regardais dans ce chemin de fichier, j'avais un ssh-keygen.bat - il semblait donc que je devrais être capable d'exécuter simplement ssh-keygen -t rsa depuis la ligne de commande.

Ce serait trop facile, au lieu de cela, je reçois:

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

tapez bashen ligne de commande pour passer en mode git bash puis exécutez 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:

Maintenant, quand je regarde dans C/User/mamwo/.ssh (la meilleure façon pour moi est par le biais du dossier pycharms - Windows craint) je vois mes id_rsa et id_rsa.pub

Mais ce problème "ne peut pas générer de publickeys" a tout commencé pour moi parce que j'avais un problème "Je n'ai pas de clés publiques à ajouter" lorsque j'ai cloné mon référentiel (depuis github) sur un nouvel ordinateur et j'ai découvert que je pouvais pousser vers github mais pas heroku.

Maintenant que j'ai les clés, je dois les ajouter

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
amchugh89