GitでPermission denied (publickey)エラーが発生した場合の対処法は?

私はMac Snow Leopardで、gitをインストールしたばかりです。

私が試したのは

git clone git@thechaw.com:cakebook.git

を試してみましたが、このようなエラーになってしまいました。

Initialized empty Git repository in `/Users/username/Documents/cakebook/.git/`
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

何が足りないのでしょうか?
また、passphaseを使わずにssh-keygenを実行してみましたが、やはり同じエラーが出ました。

ソリューション

**sshの公開鍵と秘密鍵のペアが生成されていない場合。

この情報は theChaw での作業ですが、SSH パブキー認証をサポートする他のすべての git リポジトリにも適用できます (たとえば gitolite や gitlab、github などを参照してください)。(例えば gitolite,gitlab,github などを参照してください).

まず最初に、自分の公開鍵/秘密鍵のペアセットを設定します。これは DSA または RSA を使用するので、基本的にはどのような鍵を設定しても動作します。 ほとんどのシステムでは、ssh-keygen を使うことができます。

まず、.sshディレクトリにcdしてください。ターミナルを開いて、次のように実行します。

cd ~/.ssh && ssh-keygen と入力します。 次は、これをクリップボードにコピーします。

  • OS Xでは次のように実行します。キャット id_rsa.pub | pbcopy ` Linuxでは次のように実行します。Linuxでは次のように実行します:cat id_rsa.pub | xclip。 Windowsの場合(Cygwin/Git Bash経由)は以下を実行してください。次のように実行します。
  • Webサイトから自分のアカウントにキーを追加します。
  • 最後に、.gitconfigの設定を行います。
  • git config --global user.name "bob"
  • git config --global user.email bob@... git config --global user.email bob@...` > (設定が再読み込みされたことを確認するため、コマンドラインの再起動をお忘れなく) となります。 これでクローンとチェックアウトができるようになりました。

さらに詳しい情報は https://help.github.com/articles/generating-ssh-keys (@Lee Whitney に感謝します) をご覧ください。

ユーザーは事前にsshの公開鍵と秘密鍵のペアを生成している ?

  • github や gitlab のアカウント設定でどの鍵が認証されているかを確認します。
  • 対応する秘密鍵をローカルコンピュータから関連付けておく必要があることを伝える

評価 $(ssh-agent -s)`

鍵がどこにあるか

ssh-add ~/.ssh/id_rsa `

解説 (17)

より広範なトラブルシューティングや、自動修正も可能です。

ssh -vT git@github.com

ソース: https://help.github.com/articles/error-permission-denied-publickey/

解説 (15)

GIT の基本的な説明書には、SSH キーについての記述がありませんでした。上記のいくつかのリンクをたどっていくと、gitのヘルプページが見つかりました。そこには、さまざまなOSでのこの作業のやり方がステップバイステップで正確に説明されています(このリンクはあなたのOSを検出し、それに応じてリダイレクトされます)。

http://help.github.com/set-up-git-redirect/

このページでは、GITHubに必要なすべてのことが説明されています。また、「なぜRSA鍵を作成するときにパスフレーズを追加するのか」などの詳細な説明もあります。

解説 (0)