更新Git子模块失败

3

我正在尝试使用SSH在Namecheap共享服务器上克隆一个包含子模块的git repo。 'git clone'命令正常工作,但其中一个子模块失败了。当我尝试运行'git submodule update'时,它也失败了。我收到以下错误信息:

github.com[0: 207.97.227.239]: errno=Connection timed out
fatal: unable to connect a socket (Connection timed out)
Clone of 'git://github.com/WordPress/Wordpress.git' into submodule path 'wordpress' failed

我联系了Namecheap询问是否有防火墙或其他东西阻止连接,他们表示没有防火墙会拦截此连接。此外,我在GitHub上的所有其他子模块都可以成功更新。尽管如此,我还是尝试使用https协议,但仍然没有成功。 你有什么想法?
2个回答

4
一般来说,“errno=Connection timed out”应该表示在GitHub这一端出现了问题(他们的状态报告页面显示他们在9月21日和20日遇到了一些问题)。所以,除非问题仍然存在(在这种情况下,根本原因可能在你这一端),否则GitHub现在应该已经解决了它。

1
太棒了。感谢状态页面! - Jo Sprague

3
您可以使用以下命令指定在GitHub上使用https://而不是git://:
git config --global url."https://github".insteadOf git://github

这个解决方案非常适用于带有子模块和子子模块的项目,而且这些子模块都配置了 git:// 协议并处于公司代理后面。只需运行上述命令,然后执行 "git submodule update --init --recursive" 即可。 - DaBozUK

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接