目录 [hide]
git是个好东西,tortoisegit也是个好东西。在Windows下使用tortoisegit用的比较多,而对命令行的时候比较少。
对于tortoisegit可以支持使用密钥有两种,一种是支持openssh的密钥,一种是支持putty的密钥。但是这两种不同,对于Linux的ssh一般都使用openssh,但是没关系,我们可以转换。
使用putty的密钥
我们来看看这样方式,在安装TortoiseGit的时候其实会让你选择默认使用的ssh客户端,默认情况下是使用TortoiseGitPlink这个客户端。
指定ssh的客户端为TortoiseGit
生成putty密钥
在安装tortoisegit的时候,默认还会安装有Puttygen.exe这个程序,这个程序是可以生成putty密钥的。
点击Generate
按钮后会按一个进度条,然后鼠标不断在该程序内动,目的是生成一些随机数。
我第一次使用鼠标傻傻的不动,然后进度条非常的缓慢,我想这个东西生成一个密钥那么慢?原来是我打开的方式不对。
putty密钥生成
点击save private key
保存putty的私钥,putty的密钥的后缀名是ppk。
在服务器上添加openssh公钥
我们在上面创建了putty的密钥对,现在需要将生成的公钥添加到服务器上。
其实这里也可以把公钥添加到github.com上,也是可以使用的。 putty生成的公钥是和openssh的的公钥是相同的,他们只是私钥不同
假设刚刚生成的公钥是
|
登录到服务器的需要添加公钥的用户名下,比如user1这个用户名。
|
注意:公钥在authorized_keys的文件形式是一行一个公钥,切记。否则该公钥不起作用。
在tortoisegit上使用密钥
公钥已经添加到服务器去了,接下来就是在客户端上设置密钥了。
在git clone
的时候使用,如下设置:
git clone设置putty私钥
这样就可以搞定了。
putty密钥与openssh密钥转化
如果你有putty的私钥了,但是想在ssh客户端下使用openssh的私钥,再去生成一个openssh的密钥对比较麻烦(能偷懒就偷懒嘛)。
- 点击
Conversions
菜单项中的Import key
- 选择一个putty的私钥或者openssh的私钥
- 点击
save private key
保存为putty的私钥 - 或者点击菜单
Conversions
->Export OpenSSH Key
保存为openssh的私钥
SSH登录一直失败
如果SSH登录一直失败,看看是否权限会有些问题?参考ssh密钥登录失败
相关资料
http://www.chenyudong.com/archives/tortoisegit-use-key-authentication.html