TortoiseGit使用ssh-keygen生成的私钥

1.说明

使用TortoiseGit自带的PuTTY Key Generator工具,
把ssh-keygen生成的私钥转换为Putty使用的.ppk文件,
而后在拉取Git代码时,
加载对应的.ppk文件,
就能成功拉取代码。html

1.1.背景

为了同时使用TortoiseGit和git bash管理一份Git代码,
虽然大部分时候使用TortoiseGit图形化界面很是方便,
可是有的操做仍是须要使用git bash命令行。git

使用ssh-keygen生成了对应的私钥和公钥:安全

C:\Users\yuwen\.ssh\id_rsa
C:\Users\yuwen\.ssh\id_rsa.pub

在git bash上配置而且成功拉取了代码,
可是使用TortoiseGit拉取代却失败了。bash

1.2.缘由

TortoiseGit是经过Putty进行私钥/公钥验证的,
可是只能加载.ppk格式的私钥文件。
若是强制加载ssh-keygen生成的私钥文件,
会出现下面的错误:ssh

Couldn't load this key (OpenSSH SSH-2 private key)

须要把ssh-keygen生成的私钥转换为Putty可以识别的私钥。工具

1.3.ssh-keygen

OpenSSH提供了实现SSH协议的不少工具。
其中就包含ssh-keygen工具,
能够生成、管理和转换用于认证的密钥和证书。this

OpenSSH是SSH协议的开源版本。
使用SSH传输的数据都进行了加密,
比telnet,ftp等明文传输工具更安全。加密

2.转换私钥

运行TortoiseGit的bin目录下的puttygen.exe工具:.net


11810589-77b09468ffbc63d6.png

点击Load,选择须要加载的文件,
这里选择ssh-keygen生成的id_rsa私钥:命令行


11810589-89ad70a79f066a2a.png

私钥加载成功,提示保存为Putty私有的格式,
点击确认便可:
11810589-5d29df06e8637610.png

工具会显示具体加载到的key:


11810589-f1819a323117b719.png

而后选择Save private key,
弹出告警,提示未设置保护密码,点击是便可:
11810589-606c8041767a9289.png

保存为.ppk格式的私钥:
11810589-689ba7973d274c1b.png

3.加载新的私钥

在TortoiseGit拉取代码界面:


11810589-67f2fa9935185458.png

点击Manage Remotes:


11810589-9fb2005e27d1de9d.png

点击Remote下面的origin,
能够看到Git代码对应的URL,

而后在Putty Key选择刚才生成的.ppk文件便可。


11810589-cfc0517d085472cd.png

点击肯定后,继续拉取代码便可成功。

4.考文章

在git与tortoisegit中使用openSSH与PuTTY
如何在TortoiseGit中使用ssh-keygen生成的key
tortoiseGIT ssh方式

相关文章
相关标签/搜索