You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GitLab项目迁移后git archive远程连接超时问题求助

问题排查与解决方案

1. 先确认Runner网络可达性

登录Runner所在服务器,执行以下命令测试网络连通性:

ping new-gitlab.com
telnet new-gitlab.com 443
curl -I https://new-gitlab.com

如果以上命令超时或失败,说明Runner所在环境的防火墙、安全组或网络策略禁止了对新GitLab的HTTPS(443端口)访问,需要开放对应出站规则。

2. 修正curl命令的路径问题

你当前的curl命令中,下载的tar包内文件存放在build-scripts-master/子目录下,直接指定.pre-build.sh会导致找不到文件,修正后的命令:

curl -L https://new-gitlab.com/build-automation/build-scripts/-/archive/master/build-scripts-master.tar | tar -xO build-scripts-master/.pre-build.sh > .pre-build.sh && chmod +x .pre-build.sh && . .pre-build.sh

若目标仓库为私有,需在URL中加入拥有read_repository权限的Personal Access Token(PAT):

curl -L https://<你的PAT>@new-gitlab.com/build-automation/build-scripts/-/archive/master/build-scripts-master.tar | tar -xO build-scripts-master/.pre-build.sh > .pre-build.sh && chmod +x .pre-build.sh && . .pre-build.sh

3. 改用Git HTTP协议执行git archive

既然新GitLab仅支持HTTP,将git archive的远程地址改为HTTPS格式,配合认证信息使用:

. <(git archive --remote=https://<你的PAT>@new-gitlab.com/build-automation/build-scripts.git HEAD .pre-build.sh | tar -xO)

如果是在GitLab CI环境中,推荐使用预定义变量$CI_JOB_TOKEN代替PAT,安全性更高:

. <(git archive --remote=https://gitlab-ci-token:$CI_JOB_TOKEN@new-gitlab.com/build-automation/build-scripts.git HEAD .pre-build.sh | tar -xO)

4. 检查新GitLab仓库访问权限

确保当前CI作业使用的身份(PAT/CI_JOB_TOKEN)拥有目标仓库build-automation/build-scripts的读取权限,否则会出现访问被拒绝(可能表现为超时或403错误)。

内容的提问来源于stack exchange,提问作者user1728730

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 17:42:41