私は Mac Snow Leopard を使用しており、 をインストールしましたgit
。
試してみた
git clone [email protected]:cakebook.git
しかし、次のようなエラーが発生します:
Initialized empty Git repository in `/Users/username/Documents/cakebook/.git/`
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
何が足りないのでしょうか?パスフェーズなし
でも試してみましたssh-keygen
が、それでも同じエラーが発生します。
ベストアンサー1
ユーザーが以前にSSH公開鍵/秘密鍵ペアセットを生成していない場合
この情報は theChaw で機能しますが、SSH 公開鍵認証をサポートする他のすべての git リポジトリに適用できます。(たとえば、[gitolite][1]、gitlab、github を参照してください。)
まず、独自の公開/秘密キー ペア セットを設定します。DSA または RSA のいずれかを使用できるため、基本的に設定したキーはすべて機能します。ほとんどのシステムでは、ssh-keygen を使用できます。
- まず、.ssh ディレクトリに cd します。ターミナルを開いて、次のコマンドを実行します。
cd ~/.ssh && ssh-keygen
- 次に、これをクリップボードにコピーする必要があります。
- OS X では以下を実行します:
cat id_rsa.pub | pbcopy
- Linux では以下を実行します:
cat id_rsa.pub | xclip
- Windows (Cygwin/Git Bash 経由) では以下を実行します:
cat id_rsa.pub | clip
- Windows (Powershell) では以下を実行します:
Get-Content id_rsa.pub | Set-Clipboard
(Thx to @orion elenzil)- ウェブサイトからアカウントにキーを追加します。
- 最後に .gitconfig を設定します。
git config --global user.name "bob"
git config --global user.email bob@...
(設定が再ロードされたことを確認するためにコマンドラインを再起動することを忘れないでください)これでクローンしてチェックアウトできるようになります。
詳しい情報は以下をご覧ください。https://help.github.com/articles/generating-ssh-keys(@Lee Whitneyに感謝) [1]:https://github.com/sitaramc/gitolite
-
ユーザーが以前にssh公開鍵/秘密鍵ペアセットを生成した場合
- githubまたはgitlabのアカウント設定でどのキーが承認されているかを確認します
- ローカルコンピュータから関連付ける必要がある対応する秘密鍵を決定する
eval $(ssh-agent -s)
- キーがどこにあるかを定義する
ssh-add ~/.ssh/id_rsa