我正在尝试连接到驻留在我的web服务器上的远程Git存储库,并将其克隆到我的机器上。

我使用以下格式的命令:

git clone ssh://username@domain.example/repository.git

这对我的大多数团队成员来说都很有效。通常运行此命令后Git会提示输入用户密码,然后运行克隆。然而,当在我的机器上运行时,我得到以下错误:

主机密钥验证失败。 致命的:无法从远程读取 存储库。

我们没有使用SSH密钥连接到这个存储库,所以我不确定Git为什么要在这台特定的机器上检查SSH密钥。


当前回答

你可以在Jenkinsfile或任何你想要的地方使用“https”url格式的“git url”。

git 网址:“https://github.com/jglick/simple-maven-project-with-tests.git”

其他回答

当终端显示:

您确定要继续连接(是/否)?

不要我重复一遍不要直接按Enter键。

你必须先在终端输入yes,然后按Enter。

我在新安装的系统上遇到了同样的问题,但这是一个udev问题。没有/dev/tty节点,所以我必须这样做:

mknod -m 666 /dev/tty c 5 0

另一种替代方法也适用于我,而不是克隆SSH链接

git@gitlab.company.net:upendra/mycode.git

有一个选项可以选择HTTP链接

http://gitlab.company.net:8888/upendra/mycode.git

所以我使用http链接克隆为Visual studio,它为我工作

或者,如果您使用MSYS2终端(在Windows*上)和密码短语,可能是终端没有正确提示“输入密码短语”,从而拒绝访问SSH。

如果你在Windows上,你可以使用Git Bash或Powershell来获得提示并正确连接。(我目前正在寻找MSYS的解决方案。)

*不确定是否相关。

这是因为github目前不在你的已知主机。

应该会提示您将github添加到已知主机。如果没有出现这种情况,您可以运行ssh -T git@github.com再次接收提示。