はじめに
二つ目のGitHubアカウントを作成して.ssh内のconfigを設定して以降、git cloneができなくなったので調べた。
エラーした実行コマンド
git clone git@github.com:usr/***
エラー出力
Cloning into '***'...
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
原因
config内でHostにAlice, Bobというエイリアスを設定していたのでエラーがおきた。
config
Host Alice
HostName github.com
IdentityFile ~/.ssh/id_Alice_rsa
User git
#サブアカウント
Host Bob
HostName github.com
IdentityFile ~/.ssh/id_Bob_rsa
User git
よって実行するコマンドは以下。
正しい実行コマンド
git clone git@Alice:usr/***
補足
configのUserがcharleの場合は以下になる
実行コマンド
git clone charle@Alice:usr/***
ssh接続テストのコマンドも同様にconfigに合わせる
ssh接続テスト
ssh git@github.com
Host Alice
ssh git@Alice
僕はエラー処理当時これも分からなくて、sshの再生成と再登録は完了しているのに接続エラーが出まくり5時間くらい迷わされました。バカすぎる...
その他
リモートリポジトリとの接続も同じ
git remote add origin git@Alice:usr/***