TortoiseGit 使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥。使用命令ssh-keygen -C "邮箱地址" -t rsa产生的密钥在TortoiseGit中不能用。而基于git的开发必须要用到rsa密钥,因此需要用到TortoiseGit的putty key generator工具来生成既适用于git的rsa密钥也适用于TortoiseGit的ppk密钥,具体配置步骤如下
一.运行TortoiseGit开始菜单中的puttygen程序,如下图示
![](https://i-blog.csdnimg.cn/blog_migrate/84600aade322ed242edf3d1f583cc1bc.png)
二.点击“Generate”按钮,鼠标在上图的空白地方来回移动直到进度条完毕,就会自动生一个随机的key,如下图示
![](https://i-blog.csdnimg.cn/blog_migrate/4f9791ab8c70aa04c7f893c0d1e08d02.png)
如有需要,可以为密钥设置对应的访问密码,就是修改上图中“Key passphrase”和“Confirm passphrase”的值。本人这里未设置访问密码,为空
三.将生成的key复制,粘贴到git账户中的SSH public key中,这就是适用于git的公钥
四.点击上图中的“Save private key”按钮,将生成的key保存为适用于TortoiseGit的私钥(扩展名为.ppk)
五.运行TortoiseGit开始菜单中的Pageant程序,程序启动后将自动停靠在任务栏中,图标显示为,双击该图标,弹出key管理列表,如下图示
![](https://i-blog.csdnimg.cn/blog_migrate/6d1d94ea5dd36966757f4f2eee94684d.png)
点击Add Key,将保存的ppk文件添加进来即可,添加后如下图
![](https://i-blog.csdnimg.cn/blog_migrate/63d31cfb00042479155df6fb47b1423c.png)
点击close完成
2
打开GitLab,找到Profile settings(右上角)下的SSH keys选项,选择Add SSH Key,Title输入框里输入一个名称(随便写,或者不写自动生成一个),然后把上面生成的以ssh-rsa开头的一长串密钥复制到Key输入框,点击Add Key保存。
打开GitLab,找到Profile settings(右上角)下的SSH keys选项,选择Add SSH Key,Title输入框里输入一个名称(随便写,或者不写自动生成一个),然后把上面生成的以ssh-rsa开头的一长串密钥复制到Key输入框,点击Add Key保存。
![](https://i-blog.csdnimg.cn/blog_migrate/7887691f4b30d47e29f72ce048aed0e8.png)
3
![](https://i-blog.csdnimg.cn/blog_migrate/41823f265b2af83ba73620d172bdf328.png)
4
到这里SSH Key就配置成功了,刚才生成密钥对的窗口可以关闭了。3.在本地项目中配置SSH Key在项目的文件夹上右击鼠标,选择TortoiseGit—Settings—Remot,因为我用的是汉化版本,所有文字介绍略有差异,在PuttyKey后选择刚才保存到本地的私钥,然后点击应用。
到这里SSH Key就配置成功了,刚才生成密钥对的窗口可以关闭了。3.在本地项目中配置SSH Key在项目的文件夹上右击鼠标,选择TortoiseGit—Settings—Remot,因为我用的是汉化版本,所有文字介绍略有差异,在PuttyKey后选择刚才保存到本地的私钥,然后点击应用。
![](https://i-blog.csdnimg.cn/blog_migrate/c90a41293ae114d920ca1d46c75843c0.png)
5
设置SSH客户端,选择Network选项,在下面的SSH Client选项中选择TortoiseGit的安装目录下bin文件夹中的TortoiseGitPlink.exe程序,如果已经默认选中,直接确定就可以了。
![](https://i-blog.csdnimg.cn/blog_migrate/d1550f541de8bc2da4bf89e80f4f8892.png)
6
在Pull或Push项目的时候,记得勾选AutoloadPutty Key选项。
![](https://i-blog.csdnimg.cn/blog_migrate/e963ea0d6372d8f6a3ba53d7a11dcc4d.png)
原文:https://blog.csdn.net/weixin_34051201/article/details/87752106
https://www.cnblogs.com/yqzc/p/6762206.html