はじめに
Git「リポジトリに繋がせてください」
ssh「お前はダメだ」
ここから始まりました.
エラー内容
先日から筆者がGitの初歩に戻ろうと思い,以前に立ち上げていたGit練習用のリポジトリにアクセスしようとしました.
しかし,
> git pull
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
怒られてしまいました.
エラー原因調査
自分の場合はホスト名の整合性が取れていないことでエラーが発生していました.
それもそのはず,以下の記事に魅了され以前にsshのホスト名を変更していたことをすっかり忘れていました……
.sshディレクトリ配下に存在するconfigファイルですが,
これが,
ホスト名の先頭に見事アンダースコアがついていますね.
さて,ここで各リポジトリに生成されている.gitディレクトリ配下のconfigファイルを覗いてみましょう.(Bitbucketのユーザ名は伏せさせて頂きます)
うわーやらかしてますわーこれ.
やっぱり.gitのconfigとsshのホスト名の整合が取れていませんね?
何やってるんでしょうかね私は……
解決方法
至って単純です.
.ssh/configのホスト名と.git/configのurl部分におけるホスト名を統一させる
上記で完了です.
私の場合では,
urlのgit@に続くホスト名をssh configと同じホスト名にすることで解決しました.
おわりに
sshホスト名のアンダースコア消そうかしら……
他にもコンフリクト起きてそうで怖いです(笑)