Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git &引用;“算法协商失败”;在TeamCity上使用SSH身份验证_Git_Ssh_Teamcity_Teamcity 7.0 - Fatal编程技术网

Git &引用;“算法协商失败”;在TeamCity上使用SSH身份验证

Git &引用;“算法协商失败”;在TeamCity上使用SSH身份验证,git,ssh,teamcity,teamcity-7.0,Git,Ssh,Teamcity,Teamcity 7.0,我们有一个TeamCity 7.1.5,我们的Git存储库托管在TFS 2017上。我们希望切换到使用公钥/私钥的SSH身份验证。因此,我创建了一个openSSH密钥对,并在我的TFS用户上添加了公钥。在我的本地机器上,这工作正常 但当我想将TeamCity VCS根目录配置为同时使用SSH时,我总是会遇到以下异常: Failed for the root 'VCS ROOT' #830: List remote refs failed: com.jcraft.jsch.JSchExcepti

我们有一个TeamCity 7.1.5,我们的Git存储库托管在TFS 2017上。我们希望切换到使用公钥/私钥的SSH身份验证。因此,我创建了一个openSSH密钥对,并在我的TFS用户上添加了公钥。在我的本地机器上,这工作正常

但当我想将TeamCity VCS根目录配置为同时使用SSH时,我总是会遇到以下异常:

Failed for the root 'VCS ROOT' #830: List remote refs failed: 
com.jcraft.jsch.JSchException: Algorithm negotiation fail
TeamCity服务器上提供了私钥,
config
应正确:

Host tfs.company.com
    IdentityFile ~/.ssh/tfs.company.com_rsa_sha1
我尝试了
默认私钥
私钥
两个选项,有密码和没有密码

我发现的唯一一件事是升级
JSch
库,但我不知道如何升级这个库以及把jar文件放在哪里


是否有人有类似的问题或知道如何升级库?

显然,解决方案非常简单。我只需要从下载JSch库的最新版本
0.1.54
,并将其放入
C:\ProgramFiles\TeamCity\webapps\ROOT\WEB-INF\lib
。重新启动TeamCity,一切正常。

SSH中的算法不仅仅是公钥。还有更多。您可以非常简单地从命令行ssh对它们进行研究,但我相信您也可以从jsch获得一些调试。首先,我会尝试更新客户端。