狂ったお茶会のlog

後で起きる自分のためのメモ

mac再起動したら、GithubにSSHでアクセスできなくなった

前提

SourcetreeでSSH鍵を作成して、Githubにその鍵を登録してある状態
mac再起動するまでは、正常に使えていた

やりたいこと

macを久々に再起動して、
Sourcetreeでfetchしようとしたら

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.

って出たので解決したい。

やったこと

とりあえず、接続試みつつデバッグしてくれるコマンドで確認
ssh -vT git@github.com

↑のログを見た感じ、Offering public key で、.ssh/id_rsa を見に行っている気配
けどこれ接続できないの当たり前で、ソースツリー&githubに登録してある鍵は別の名前の鍵(仮にid_rsa_githubとする)。

色々やったけど、以下結論。

.ssh/config に、Sourcetreeがssh鍵を作るときに情報を勝手に書き込んどいてくれるのだが、その情報がダメそうだった。

こうなってたのを

# --- Sourcetree Generated ---
Host id_rsa_github
        HostName github.com
        User dormouse666
        PreferredAuthentications publickey
        IdentityFile /Users/hogehoge/.ssh/id_rsa_github
        UseKeychain yes
        AddKeysToAgent yes
# ----------------------------


こうしたら治った。

# --- Sourcetree Generated ---
Host github.com
        HostName github.com
        User git
        PreferredAuthentications publickey
        IdentityFile /Users/hogehoge/.ssh/id_rsa_github
        UseKeychain yes
        AddKeysToAgent yes
# ----------------------------


memo:

  • Host を、ssh keyの名前から、github.com へ
  • User を、Githubのユーザ名から、git へ


参考URL

macOS 再起動で GitHub と SSH 接続できなくなる【Sourcetree】