web-dev-qa-db-ja.com

「ssh-keygen」は内部コマンドまたは外部コマンドとして認識されません

git Push -u Origin masterを実行します

「許可が拒否されました(公開キー)致命的:リモートエンドが予期せずハングアップしました」

次に、インターネットを調べて、GitHubでアカウントのsshキーを生成する必要があることに気付きました。ただし、そうすると、ssh-keygen -t rsa "[email protected]"を実行しようとすると、単にssh-keygenが認識されないというだけでした。 mkdir C:\ sshを試しましたが、うまくいきませんでした。うまくいけば、Ruby Railsを使用していて、Windowsコンピューターを使用しています。誰も私を助けることができますか?

98
user1567909

2012:
ssh-keygen.exemsysgitの一部です:

 C:\path\to\msysgit1.7.11\bin\ssh-keygen.exe

%PATH%C:\path\to\msysgit1.7.11\bin\が含まれている場合、ssh-keygenがあります。


更新2015:
ssh-keygen.exeGit For Windowsの一部であり、その- releasesinclude PortableGit-2.4.3.1-2nd-release-candidate-64-bit.7z

c:\path\to\PortableGit-2.4.3.1-2nd-release-candidate-64-bit\usr\bin\ssh-keygen.exe

つまり、%PATH%にはc:\path\to\PortableGit-2.4.3.1-2nd-release-candidate-64-bit\usr\binを含める必要があります(ssh-keygen.exeなし)

前に説明したように であるため、Git for Windowsはmsysgitを段階的に廃止します。
詳細は「 Git 2.0をネットからダウンロードすると、常に1.9.4インストーラーパッケージが取得されるのはなぜですか?msys2プロジェクト

130
VonC

この問題が発生したばかりで、これを回避する簡単な方法だと思ったことを共有すると思いました。

Git-bashを開き、メールアドレスにコメントしているので、-Cを追加して同じコマンドを実行します:ssh-keygen -t rsa -C "[email protected]"コマンド。それでおしまい。

gitをインストールしたときにgit-bashがインストールされているはずです。見つからない場合は、C:\ Program Files\Git\Git Bashを確認できます

初めてこれを行ったときに、.sshフォルダーを作成できなかったため、標準のコマンドプロンプトとmkdir C:\ Users\yourusername\.sshを開く必要がありました

62
cjaypierson

私は以下のWindowsをフォローしました(Git for Windowsがインストールされている場合)

  1. 「Git Gui」を実行します(スタート-> Git-> Git Gui)
  2. [ヘルプ]をクリックし、[SSHキーを表示]をクリックします
  3. まだキーを持っていない場合は、「キーを生成」をクリックします

注:-これにより、個人プロファイルフォルダーC:\ Users\YourUserID\.ssh \の下にキーファイルが作成されます

enter image description here

42
Dinesh Rajan

私はこれを修正する簡単な解決策を見つけました:

コマンドプロンプトで、git\binディレクトリに移動し、ここからコマンドを実行します

9
pirgauthier

環境変数に何も追加する必要はありません! git bashを開いて、そこにssh-keygenコマンドを実行するだけです。

Git bashをダウンロードするためのリンク こちら

9
Bilton Tran

Gitをインストールしていて、C:\ Program Filesにインストールされている場合は、次の手順に従ってください。

  1. 「C:\ Program Files\Git」に移動します
  2. Git-bash.exeを実行すると、新しいウィンドウが開きます
  3. 新しいbashウィンドウで、「ssh-keygen -t rsa -C」を実行します
  4. キーを保存するファイルを要求しますが、値を入力しないでください-Enterキーを押すだけです
  5. パスフレーズと同じ(2回)、単にEnterを押す
  6. id_rsaおよびid_rsa.pubは、.sshの下のホームフォルダーに生成されます。
6
user3233126

Heroku.batにアクセスして以下を追加してください:

@SET PATH=%HEROKU_Ruby%;%PATH%の後の@SET PATH="D:\Program Files (x86)\Git\bin";%PATH%

私の場合は、D:\ Program Files(x86)\ Git\binにあり、Gitをインストールしたパスに変更します。 (私はパスを残したので、これを書く方法がより明確になります)

4
Vlad

ファイルssh-keygen.exeの場所をPATH環境変数に追加できると思います。次の手順に従います。[マイコンピューター]、[右クリック]、[プロパティ]、[システムの詳細設定]、[環境変数]の順にクリックします。次に、[パス]をクリックし、[編集]をクリックします。変数値フィールドで、最後に移動し、 '; C:\ path\to\msysgit1.7.11\bin\ssh-keygen.exe'を追加します(引用符なし)

3
Nehal J Wani

コマンドプロンプトを入力するだけでは何もしません

C:\> sh

あなたはこのようになった

sh-4.4$ 
# type here 
ssh-4.4$ ssh-keygen -t rsa -b 4096 -C "[email protected]"

これは動作するはずです。

2
Osama Saeed

おそらく this を確認する必要があります。 Windowsにはそのコマンドが組み込まれていません。

Windowsの場合、これを追加できます。

SET PATH="C:\Program Files\Git\usr\bin";%PATH%
1
oumina

bASH HEREオプションを選択しない人向け。 cmdにshと入力すると、ssh-keygen.exeにアクセスできるはずです

0
Zeeshan Khan

環境変数にssh-keygenを追加するだけで修正されました。

私のマシンでは、ssh-keygenはpowershellから入手できました。

0
user4757074