查找密钥的使用位置
要确定密钥已在何处使用,请打开终端并键入 ssh
命令。使用 -i
标志提供要检查的密钥的路径
$ ssh -T -ai ~/.ssh/id_rsa [email protected]
# Connect to GitHub.com using a specific ssh key
> Hi USERNAME! You've successfully authenticated, but GitHub does not
> provide shell access.
响应中的 用户名 是 GitHub.com 上当前附加密钥的帐户。如果响应类似于“用户名/存储库”,则该密钥已作为 部署密钥 附加到存储库。
要强制 SSH 仅使用命令行上提供的密钥,请使用 -o
添加 IdentitiesOnly=yes
选项
ssh -v -o "IdentitiesOnly=yes" -i ~/.ssh/id_rsa [email protected]
解决问题
要解决此问题,请首先从其他帐户或存储库中删除密钥,然后 将其添加到您的帐户。
如果您没有权限转移密钥,并且无法联系拥有权限的用户,请删除密钥对并 生成一个全新的密钥。
部署密钥
一旦密钥作为部署密钥附加到一个存储库,它就不能用于另一个存储库。如果您在设置部署密钥时遇到此错误,请参阅“管理部署密钥”。