随着 Git 的普及现在越来越多的人在使用 Git,国外有 Github ,国内有 Coding、码云等,每个平台可能都有不同的账号。
Github 及类似 Github 等管理工具会要求每个用户生成一对rsa密钥(公钥和私钥),然后把私/公钥放置于:/home/user/.ssh/id_rsa 和 /home/user/.ssh/id_rsa.pub
并且将公钥注册于 Github 或者类似工具上。
这样使用 Git 管理工具进行 SSH 交互的时候,我们生成的公钥和私钥就会被用来进行认证,如果认证不通过就会被reject——或者类似的不成功动作。
问题在于默认的 id_rsa 只有一个,而某些平台只识别默认的,对于非默认的公钥是不识别的。
解决方法是创建 config 文件,在理解添加如下内容
# account for the git repo Host github.com HostName github.com IdentitiesOnly yes IdentityFile ~/.ssh/id_rsa_github