有办法让git over http超时吗?

5tmbdcev  于 2023-05-21  发布在  Git
关注(0)|答案(3)|浏览(173)

我有一个自动运行git clone/pull的脚本(这实际上是在jenkins CI中发生的,但我的问题更一般)。远程git服务器基于HTTPS。带有git客户端的机器有一个不稳定的DSL互联网连接,所以它有时会重新连接并更改IP地址,失去所有现有的连接。当git客户端运行时连接失败时,客户端永远不会成功,但也不会超时失败,所以我的脚本挂起。
我想设置客户端,使其在一段时间后超时(因此脚本可以重试,或记录失败,或采取任何其他行动)。但是我在git-config手册页中没有找到任何超时选项。我找到了a related question,但它只用于SSH连接。你知道http服务器是否有替代品吗?

1qczuiv0

1qczuiv01#

  • CAD bloke* 的回答:

git config --global http.lowSpeedLimit 1000
git config --global http.lowSpeedTime 600

工作正常。
上面的例子意味着当速度保持低于1 KB/s 600秒(10分钟)时,远程操作将阻塞,操作将阻塞。

agxfikkp

agxfikkp2#

你可以试试用

http.lowSpeedLimithttp.lowSpeedTime

如果HTTP传输速度(以字节/秒为单位)低于“http.lowSpeedLimit”的时间超过“http. lowSpeedTime”秒,则传输将中止。
可以被GIT_HTTP_LOW_SPEED_LIMITGIT_HTTP_LOW_SPEED_TIME环境变量覆盖。
Git 2.41(Q2 2023)添加了http.lowSpeedLimit的单元。
参见commit 0aefe4c(2023年5月13日)Corentin Garcia ( corenting )
(由Junio C Hamano -- gitster --合并于commit 1f141d6,2023年5月20日)

doc/git-config:为http.lowSpeedLimit添加单位

签字人:科伦坦·加西亚
在文档中添加http.lowSpeedLimit的单位(字节每秒)。
git config现在在其手册页中包括:
如果HTTP传输速度(以每秒字节数为单位)...

isr3a4wc

isr3a4wc3#

将此添加到.gitconfig...

[http]
lowSpeedLimit = 1000
lowSpeedTime = 20

lowSpeedLimit是每秒字节数
我称之为Codeplex子句。

相关问题