前言

现在比较流行使用git来进行代码的管理,公司内部一般使用gitlab来搭建Git服务器(中央服务器),而我们需要在自己的电脑上安装git(本地git服务器),并安装一个TortoiseGit客户端。我们可以使用SSH或者HTTPS(HTTP)两种协议来操作中央服务器上的repository。

问题

1:当通过SSH协议方式操作中央服务器上的repository时,出现以下问题;问题的大概意思是:没有可用的支撑验证方法(服务器发送公钥)

TortoiseGit的SSH Client是个坑

2:我们都知道如果要使用SSH协议来操作github或者gitlab上的repository时,需要在本地电脑上使用git命令生成一对公钥和私钥,然后把公钥配置到github或者gitlab里,私钥在本地电脑上存放(不会设置可以查看《设置github使用的SSH key》);这样一来用SSH协议操作中央服务器上的repository时,就不用再输入账号和密码来进行验证,而是git自动使用公钥和私钥进行对比,从而验证身份(重点:git使用本地的私钥和中央服务器上的公钥进行对比)。我们打开TortoiseGit上的Settings,查看Settings里的Network,会发现如下图:ssh client使用的是TortoiseGit的命令行工具,而不是git的命令行工具,所以这个TortoiseGitPlink.exe找不到私钥在哪里,并不会发送给中央服务器和公钥做对比。(直接用git的bash命令行来操作repository就没有这个问题的存在)

TortoiseGit的SSH Client是个坑

3:修改TortoiseGit的Settings里的NetWork如下图,换成使用Git自己的ssh命令行工具

TortoiseGit的SSH Client是个坑

4:再次操作中央服务器上的repository,成功

TortoiseGit的SSH Client是个坑

相关文章:

  • 2022-12-23
  • 2022-02-24
  • 2021-05-30
  • 2022-12-23
  • 2022-12-23
  • 2021-07-01
猜你喜欢
  • 2021-06-08
  • 2022-12-23
  • 2021-07-08
  • 2021-10-03
  • 2021-08-18
  • 2021-10-07
  • 2021-05-16
相关资源
相似解决方案