TortoiseGit的ssh key和Git的ssh key
情景模拟:
你使用Git+TortoiseGit对项目进行版本控制,本地库(自己电脑建立的.git)与远程库(如GitLab上建立)通信需要使用ssh验证,你用git生成公钥并保存到了Gitlab上,但当你用tortoiseGit拉取项目,却依然报错no supported authentication methods available
关键点 :
git生成的公钥与tortoiseGit生成的公钥是不一致,不共用的。
解决方案:
(1)tortoiseGit关联git的sshkey,上述情景的问题就解决了
参考:https://stackoverflow.com/questions/3431314/github-no-supported-authentication-methods-available
(2)直接用tortoiseGit生成公钥,并保存到远程库中
教程:http://www.cnblogs.com/zqifa/p/gitlab-6.html
简单理解:
SSH(Secure Shell)是一种安全协议,在你的电脑与GitLab服务器进行通信时,需要使用SSH密钥认证的方式保证通信安全。远程端持有公钥,在收到本地的拉取/克隆请求时,用公钥对内容加密再传输,本地接收时需要用对应的私钥解密。
补充:git生成ssh公钥 https://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E7%94%9F%E6%88%90-SSH-%E5%85%AC%E9%92%A5