git:如果http请求失败,请重试

居特利

在我们的持续集成环境中,我们大量使用git clonegit update

有时网络或中央git服务器不可靠。

有没有办法告诉git如果http请求失败重试?

例:

访问https://example.com/repos/foo_bar/info/refs?service=git-upload-pack时出现500内部服务器错误

有没有办法告诉git如果http请求失败重试?

没有git本身,它本身不支持该功能。

但有趣的是,包装git命令以重试其执行的想法之前已经完成:请参阅depot_tools的一部分git-retry(1)手册页depot_tools是处理Chromium开发的工具集合

包装外壳git-retry调用python脚本git_retry.py使用下列选项:

'-v', '--verbose', default=0,

增加详细程度;可以多次指定

'-c', '--retry-count', default=GitRetry.DEFAULT_RETRY_COUNT (5),

重试次数(默认为5)

'-d', '--delay', default=GitRetry.DEFAULT_DELAY_SECS (3.0)

指定两次连续重试之间要等待的时间(以秒为单位)(默认值是3秒)。可以为零。

'-D', '--delay-factor', default=2

适用于连续故障之间的延迟的指数因子(默认值=%default)。如果为零,则延迟将线性增加。将此设置为1可以保持恒定(不增加)延迟。


注意:带有子模块的仓库的git clone总是会尝试两次克隆一个子模块(一次重试)。请参阅“有什么方法可以从失败的地方继续进行Git克隆吗? ”。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如果无法打开流,请重试:HTTP请求失败!1 PHP

如果失败,请重试SFTP?

Java-并发性:LinkedBlockingQueue,“如果失败,请重试”

AngularJS:存储失败的http请求,然后重试

如果在 Flutter 中失败,Future 可以在内部重试 http 请求吗?

如果失败或 ResponseCode 不等于 200,则 Jmeter 重试请求

VBA如果错误,请重试

使用$ http拦截器重试失败的请求

如何仅重试幂等方法的失败 http 请求?

如何重试失败的akka-http请求流的编组?

如果未找到 1 个嵌入式资源,请避免将 HTTP 请求标记为失败

Google Pay-错误:请求失败-意外的开发人员错误,请稍后重试

Google登录失败,出现HTTP错误400,提示“抱歉,那里出了点问题。请重试。”

Whatsapp共享音频失败-“请重试”

如何重试失败的网络请求

JS如果出现错误,请重试

Pyodbc 如果连接失败重试

如果Cypress中的HTTP请求失败,则测试失败

git pull:信息/引用HTTP请求失败

如果失败,机械化人员是否可以选择重试请求?

godaddy git clone权限被拒绝,请重试

请求超时的 http 重试 (408)

如何重试HTTP POST请求

流星-如何在不丢失上下文的情况下重试失败的HTTP请求?

如果存储库太大,Azure 函数本地 git“RPC 失败;HTTP 400 curl 22 请求的 URL 返回错误:400”

Angular 中的 HttpInterceptor 不重试失败的请求

如果密码无法编码,则重试也将失败

如果X次失败,则nodejs重试功能

如果Ajax失败,则Dropzone.js重试