我遇到过这个错误:
$ git fetch ssh://name@gerrit.XXXXX:XXXXX/ xxx && git checkout FETCH_HEAD
Unable to negotiate with 192.168.XXX.XXX: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1
fatal: Could not read from remote repository.
这是他们在OpenSSH网站上的建议:
对于上述错误消息的情况,可以将OpenSSH配置为 启用diffie-hellman-group1-sha1密钥交换算法(或任何 使用KexAlgorithms选项的其他默认禁用的选项 - 在命令行上:
ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 user@legacyhost
文件的作者没有想到user@legacyhost
应该是什么并不明显。你能帮我填一下这些信息吗?我尝试了我的gerrit登录,但没有用。
答案 0 :(得分:1)
ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 user@legacyhost
这只是一个例子,意思是“如果您正在尝试 ssh user@legacyhost
并看到上述错误,然后提供 -oKexAlgorithms=+diffie-hellman-group1-sha1
选项到 ssh
。
在git的引擎下使用ssh时,必须通过~/.ssh/config
文件提供该选项:
Host gerrit.XXXXX
KexAlgorithms +diffie-hellman-group1-sha1