57

SSH を使用して git リポジトリを Web サーバーにクローンしていますが、このエラーが発生するたびに

$git clone git@github.com:aleccunningham/marjoram.git
Cloning into marjoram...
Host key verification failed.

私は、Google 検索に表示されるほとんどすべてのことを試しましたが、なぜこれがうまくいかないのか、唖然としました。何か案は?

また、Jenkins のようなものは使用していません。

4

4 に答える 4

202

~/.ssh/known_hosts ファイルに Github が存在しないことが問題である可能性があります。

承認済みホストのリストに GitHub を追加します。

ssh-keyscan -H github.com >> ~/.ssh/known_hosts

于 2015-04-01T00:07:54.457 に答える
21

問題を解決しました... ssh 公開鍵を github アカウントに追加する必要があります。

  1. ssh キーが正しく設定されていることを確認します。
    1. 走るssh-keygen
    2. パスワードを入力します (デフォルトのパスを保持します - ~/.ssh/id_rsa)
  2. 公開鍵 ( ~/.ssh/id_rsa.pub) を github アカウントに追加します
  3. 試してみてくださいgit clone。できます!


初期状態(githubアカウントに公開鍵が追加されていない状態)

foo@bn18-251:~$ rm -rf test
foo@bn18-251:~$ ls
foo@bn18-251:~$ git clone git@github.com:devendra-d-chavan/test.git
Cloning into 'test'...
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
foo@bn18-251:~$


次に、公開鍵~/.ssh/id_rsa.pubを github アカウントに追加します (私は を使用しましたcat ~/.ssh/id_rsa.pub)

foo@bn18-251:~$ ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (/home/foo/.ssh/id_rsa): 
Created directory '/home/foo/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/foo/.ssh/id_rsa.
Your public key has been saved in /home/foo/.ssh/id_rsa.pub.
The key fingerprint is:
xxxxx
The key's randomart image is:
+--[ RSA 2048]----+
xxxxx
+-----------------+
foo@bn18-251:~$ cat ./.ssh/id_rsa.pub 
xxxxx
foo@bn18-251:~$ git clone git@github.com:devendra-d-chavan/test.git
Cloning into 'test'...
The authenticity of host 'github.com (207.97.227.239)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,207.97.227.239' (RSA) to the list of known hosts.
Enter passphrase for key '/home/foo/.ssh/id_rsa': 
warning: You appear to have cloned an empty repository.
foo@bn18-251:~$ ls
test
foo@bn18-251:~/test$ git status
# On branch master
#
# Initial commit
#
nothing to commit (create/copy files and use "git add" to track)
于 2013-03-05T04:29:18.657 に答える
-1

私は同じ問題を抱えていましたが、解決策は非常に簡単です.cmdまたは他のWindowsコマンドラインツールからgit bashに変更するだけです. Windows は、git npm の依存関係でうまく動作しないことがあります。

于 2016-06-01T22:27:39.310 に答える