已经在Git Server服务器上导入了SSH公钥,可用TortoiseGit同步代码时,还是提示输入密码?

Posted 米粮二斗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了已经在Git Server服务器上导入了SSH公钥,可用TortoiseGit同步代码时,还是提示输入密码?相关的知识,希望对你有一定的参考价值。

GitHub虽好,但毕竟在国内访问不是很稳定,速度也不快,而且推送到上面的源码等资料必须公开,除非你给他交了保护费;所以有条件的话,建议大家搭建自己的Git Server。本地和局域网服务器都好,不信你试试,那速度,怎一个爽字了得!

默认情况下,使用TortoiseGit同步代码,每次都需要输入用户名和密码,但为了方便可以在客户端创建ssh密钥,用于服务器端和客户端的认证(详细过程大家可参考这里),但有时会出现“ 已经在Git Server服务器上导入了SSH公钥,可用TortoiseGit同步代码时,先报个错,然后还是提示输入密码”的问题:

Pageant: Couldn\'t load this key (OpenSSH SSH-2 private key(old PEM format))

解决办法是:

 

打开TortoiseGit的设置界面:在任意目录->右键->选择TortoiseGit->设置->网络->SSH客户端:


将TortoiseGit默认的客户端C:\\Program Files\\TortoiseGit\\bin\\TortoiseGitPlink.exe修改为:
%Git for Windows的安装路径%\\usr\\bin\\ssh.exe,保存即可。
这里可能会遇到意外情况:修改后点确定,界面没反应。win+r打开运行对话框,输入regedit打开注册表编辑器,
在目录HKEY_CURRENT_USER\\Software\\TortoiseGit路径下,即可看到SSH键,将其值改为上面git for windows里的ssh.exe路径即可。

以上是关于已经在Git Server服务器上导入了SSH公钥,可用TortoiseGit同步代码时,还是提示输入密码?的主要内容,如果未能解决你的问题,请参考以下文章

Git - 生成 SSH 公钥

Git 生成 SSH 公钥

git配置管理

服务器上的 Git

Git托管

是否可以在 2 台机器上使用相同的 ssh 私钥/公钥对来访问 git 存储库?