在git与tortoisegit中使用openSSH与PuTTY

转载 2016年06月02日 11:18:47

问题

在使用Git与tortoisegit的时候,指定远程版本库的地址有2种方式:

  1. 使用https方式的git地址非常直接(https://xxx.oschina.net/xxx.git),基本上什么都不需要配置,不管是git bash还是tortoisegit都能完美使用,但是每次需要连接远程服务器时,都要提示我输入用户名与密码,非常不爽;
  2. 使用ssh方式的git地址非常爽快(git@git.oschina.net:xxxx/xxx.git),不需要输入密码,但是需要配置。

第一种方式没啥说的,第二种方式的应用,我配置的时候出现了一个问题:

配置了tortoisegit的putty后,直接用tortoisegit可以不输入密码直接完成操作;但是当我使用git bash的时候,使用git pull之类的命令还需要我输入密码...

P.S. 别说我闲的,有tortoisegit为啥还用git bash。实际上,使用git bash在有的操作上还是挺方便的(比如删除分支 git push origin :branchx)。

那怎么弄才能让这2个小家伙都不输入密码呢?

这里又有两种方式...

  1. 调整tortoisegit的settings中的network选项,将tortoisegitplink.exe改成git安装目录的下bin\ssh.exe。如果先前用ssh-keygen.exe配置好了git下的ssh话,改完就能直接用,没配置好的话...等下说。
  2. 默认安装tortoisegit,会使用PuTTY(plink)作为默认的ssh方式,声称对windows集成更好,如果不想改这种方式的话,就只能让git的ssh.exe使用PuTTY的密钥了,tortoisegit继续使用PuTTY。

注意:tortoisegit可以自动载入putty key,使用puttygen程序可以生成对应的公钥与私钥。

解决方法

我先前已经配置好了PuTTY,只是bash中的openssh不能用,于是我采用第二种方式。公钥是相同的,需要转换一下私钥。

定位putty的ppk文件,用puttygen(在tortoisegit目录里面)打开(conversions>import key)

然后点击conversions>export openSSH key,保存文件为id_rsa文件,不要拓展名。

然后再点击下面的save public key按钮,保存为id_rsa.pub文件,效果如下:

找到自己%home%下(~)的.ssh文件夹,一般windows 7以后的在c:\用户\“自己的用户名”下面。没有的话,可以新建。

把刚才的两个文件扔进去。打开git bash,执行命令,如下图。

跳转到自己的版本路径,执行git pull,命令行再也不提示密码了...再试试tortoisegit,依然也不提示要密码。

这样实际相当于配置了一回git的ssh,让openSSH与putty使用相同的密钥,git bash使用openssh连接,而tortoisegit使用PuTTY连接,谁也不碍着谁。

putty使用密钥登陆OpenSSH

原文链接:http://blog.chinaunix.net/uid-20624264-id-1911735.html 在Windows管理Linux服务器时,常使用putty登陆ssh进行远程...

putty使用密钥登陆OpenSSH

原文链接:http://blog.chinaunix.net/uid-20624264-id-1911735.html 在Windows管理Linux服务器时,常使用putty登陆ssh进行...

Git和tortoiseGit使用说明

  • 2015年09月24日 13:58
  • 5.9MB
  • 下载

git+openssh 的安装与简单使用

# 安装git sudo apt-get install git # 安装openssh服务器 # 如不成功,可参考: http://blog.csdn.net/felici...

Win平台GitExtention使用OpenSSH连接Git服务器设置

Win平台GitExtention使用OpenSSH连接Git服务器设置

TortoiseGit--小乌龟git项目中的使用简介

参考: http://www.7down.com/article/86528.html http://www.jianshu.com/p/819354c035a4 http://blog.csdn....

Windows下Git与TortoiseGit使用教程(Github为例)(四)

正式开始 建立github仓库 建立仓库的操作需要在网站上进行。我们通常是在服务器上建立仓库(repository),然后克隆(clone)到本地。如果你想在本地直接建立仓库(init),那么通常是本...

Git客户端-使用TortoiseGit下载服务端仓库

Git客户端-使用TortoiseGit下载仓库 1、个人验证 2、多人使用
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在git与tortoisegit中使用openSSH与PuTTY
举报原因:
原因补充:

(最多只允许输入30个字)