1. 生成ssh密钥(默认在~/.ssh路径生产,id_rsa和id_rsa.pub)
ssh-keygen -t rsa -b 4096 -C "xxx@qq.com"
2. 打开gitlab,在搜索栏搜索ssh,找到SSH Keys,然后添加id_rsa.pub公钥的内容到网页,保存。

3. 打开TortoiseGit/bin路径,找到puttygen.exe,双击,然后点击load,选择全部文件,选择刚刚生成的id_rsa文件,选择Save private key,任意名字即可。



打开后保存为private.ppk。
4. 打开TortoiseGit/bin路径,找到pageant.exe,双击,开启该程序,因为只有 pageant 正常运行,才可以免密码登录,所以最好把它设为开机自启,并自动加载 ppk 文件,否则每天上班开机后就得手动去起,会很痛苦。
快捷方式:
1)右击 pageant.exe ,然后生成快捷方式。
2)右击快捷方式,在目标的地方,把含有私钥信息的 ppk 文件路径追加上去,注意是追加。

例如我的是:
D:\eng\TortoiseGit\bin\pageant.exe D:\Users\tanyy\.ssh\private.ppk
5. 在项目中右击打开小乌龟的设置,选择Git->远端->origin,然后在Putty密钥添加刚刚的xxx.ppk文件。

6. 右击项目属性,选择网络,在SSH客户端中添加gitbash的ssh路径,例如我的是:D:\eng\gitbash\Git\usr\bin\ssh.exe

那么,此时推送或者拉取代码就不需要再输入密码了。
注意,如果还是不能推送或者免密,请重新删除密钥,从头开始试试,我一开始就是不行,后面重新执行一遍好了。


![[Latex美化]-表格加底色,添加灰色美化表格,便于阅读](https://i-blog.csdnimg.cn/direct/8e73381217d44c338f3d4e04b810d045.png)















