Posted at

PycharmでGithubからSSHでcloneする


概要

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クローンできるようになった。