概要
Pythonの統合開発環境であるPycharmを用いてGithubからSSHでcloneする際にかなり詰まったので、備忘録。
環境
- Windows10
- Pycharm Professional 2019.2.3
状況
- 鍵ペアは作成済み
- Githubへ公開鍵は登録済み
- 秘密鍵は~/.ssh/以下に配置済み
- 鍵生成の際、区別のため 名称を初期設定のid_rsaから変更 している
この状況において、Pycharmの通常の手順に従ってcloneしようとしても
Permission denied.(Publickey)
となり、cloneに失敗する
原因
デフォルトでは、SSH接続の際に読みにいく鍵のファイル名がid_rsa等、既定のものに限られていることが原因だった。
id_rsaではない名前をつけた秘密鍵は読んでもらえていない。
対策
~/.ssh/config を作成する
こちらの記事 が詳しい。
~/.ssh/config
Host gitHub
HostName github.com
IdentityFile ~/.ssh/github/(秘密鍵のファイル名)
User git
上記のように作成すればすればOK。
これで ssh -T github
が無事に通るはず。
cloneするURLを細工する
PycharmやGithubでは、デフォルトでSSHでクローンするURLが
git@github.com:domishana/dip_discord.git
のようになっている。これを上記のconfigの設定を読むために、
github:domishana/dip_discord.git
のように、":" 以前を変更する。
これで無事、独自に作成した秘密鍵を使ってSSHクローンできるようになった。