【发布时间】:2011-09-21 11:23:57
【问题描述】:
我有一个自动运行 git clone/pull 的脚本(这实际上发生在 jenkins CI 内部,但我的问题更笼统)。远程 git 服务器是基于 HTTPS 的。带有 git 客户端的机器有一个不稳定的 DSL 互联网连接,因此它有时会重新连接并更改 IP 地址,从而失去所有现有的连接。当 git 客户端运行时连接失败时,客户端永远不会成功,但它也不会因超时而失败,所以我的脚本挂断了。
我想设置客户端,使其在一段时间后超时(以便脚本可以重试、记录失败或采取任何其他操作)。但是我在 git-config 手册页中没有找到任何超时选项。我找到了a related question,但它仅适用于 SSH 连接。你知道http服务器是否有替代品吗?
【问题讨论】:
-
如果你想修补
git本身以获取环境变量GIT_HTTP_CONNECT_TIMEOUT和/which_overrideshttp.connecttimeoutin~/.gitconfig,请参阅 this answer