使用TortoiseGit时如何实现SSH免密码登录

1.      Git配置

连接GIT服务器使用的是SSH连接,因此无密码登录,需要使用公钥和私钥。

1)     生成公钥/私钥

在Git Shell中输入ssh-keygen命令,直接回车使用默认路径和文件名,然后提示输入密码的时候,直接回车。

我之所以折腾了好久,就是因为没有使用默认的文件名,导致GIT找不到私钥文件。

2)     发布公钥

将生成的id_rsa.pub,添加到服务器的.ssh/authorized_keys中。

可以使用ftp/scp等方式把文件传到服务器上,然后执行:

cat id_rsa.pub >> .ssh/authorized_keys

chmod 600 .ssh/authorized_keys

注意:要确保authorized_keys的权限是600,如果权限不对,有的SSH服务器会不认这个文件。

如果你使用的GitHub,登录到github,点击右上方的Accounting settings,选择SSH key,点击Add SSH key,把id_rsa.pub中的内容复制过去就可以了。

2.      TortoiseGit配置

至此,git已经可以实现免密码登录了。但是使用TortoiseGit时,还是会提示输入密码,因为TortoiseGit使用的密钥与git并不一样,它使用的是putty。要使用刚才生成的密钥,需要进行转换。

1)     生成公钥/私钥

打开“puttygen.exe“,点击”load“,选择刚才上次的私钥文件id_rsa,然后”save private key“保存成ppk文件。

2)     指定使用的私钥

在TortoiseGit的Settings中,指定Putty Key为上一步生成的ppk文件。

 

这样,TortoiseGit就可以实现免密码登录了。


1.如何生成ssh公钥

你可以按如下命令来生成 sshkey:

ssh-keygen -t rsa -C "[email protected]"  

# Generating public/private rsa key pair...
# 三次回车即可生成 ssh key

查看你的 public key,并把他添加到码云(Gitee.com) SSH key添加地址:https://gitee.com/profile/sshkeys)

cat ~/.ssh/id_rsa.pub
# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....

添加后,在终端(Terminal)中输入

ssh -T git@gitee.com

若返回

Welcome to Gitee.com, yourname!

则证明添加成功。


注意:git 代码的路径一定是SSH才能实现免密登录,很多人默认使用http方式,会造成每次都会输入密码。

猜你喜欢

转载自www.cnblogs.com/ThinkVenus/p/9006522.html