Gitで自分の非公開レポジトリからcloneができなくなったらチェックすべき事項

Git

Gitで自分のbitbucketの非公開レポジトリからクローンできなくなった

$ git clone git@bitbucket.org:user/myrepo.git
Cloning into 'myrepo'...
git@bitbucket.org: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Permission deniedとかなってアクセスできなくなることがあります。

何が原因か確認するために、

普通にbitbucket.orgにssh接続して接続できるか確認しましょう。

$ ssh -Tv git@bitbucket.org
OpenSSH_6.9p1, LibreSSL 2.1.8
...
Permission denied (publickey).

Permission deniedになります。sshによる接続が拒否られています。

そういう場合はだいたい秘密鍵がssh-agentにちゃんと追加されていません。

例えばuser-Bitbucketがbitbucket.orgに対するsshの秘密鍵とすると、ssh-addを使ってuser-Bitbucketを追加します。

$ ssh-add ~/.ssh/user-Bitbucket
Enter passphrase for /Users/user/.ssh/user-Bitbucket: 
Identity added: /Users/user/.ssh/user-Bitbucket (/Users/user/.ssh/user-Bitbucket)

ちゃんと追加されたかどうかをssh-add -lで確認します。

$ ssh-add -l 
2048 SHA256:... /Users/user/.ssh/id_rsa (RSA)
2048 SHA256:... /Users/user/.ssh/user-Bitbucket (RSA)

でuser-Bitbucketが登録されていればOKです。

これでもう一度git cloneしてみてください。

無事にクローンできると思います。

 

コメント