git clone需要ssh:// protocol,或许它不应该?

时间:2010-07-29 20:34:33

标签: git ssh

我的一位同事有一个我想克隆的远程git仓库,他提供了一个git@his.server.com网址:443 / repo.git。在这种情况下,ssh列在端口443上。

我尝试通过git clone git@his.server.com:443/repo.git进行克隆,但操作超时。我曾经认为git默认为ssh作为其协议,我不知道为什么这不起作用。

如果我在网址中明确指定了ssh,例如git clone ssh://git@his.server.com:443/repo.git,它就会正常工作。

这是预期的git行为吗?为什么第一个网址不起作用,但第二个网址不起作用?

1 个答案:

答案 0 :(得分:10)

呀。 “默认”克隆语法类似于scp。 scp URL看起来像“user @ host:path”。注意结肠;如果您使用git@his.server.com:443/repo.git,Git会认为您正在尝试从443/repo.git克隆路径git@his.server.com。如果你需要指定一个端口,你必须使用ssh风格的语法(当你最终做的时候)。