Jenkins执行自动化脚本时克隆远程仓库origin报错求排查修复
Git仓库拉取失败(status code 128)的根因分析与修复方案
根因分析
- Git凭证失效:Jenkins存储的Git访问凭证(用户名密码/SSH密钥)过期、被撤销或修改,比如Git平台账号密码更新、SSH密钥从平台移除。
- 仓库地址变更:远程仓库的URL被修改(如HTTPS转SSH、域名变更、仓库重命名/迁移),但Jenkins项目配置未同步更新。
- 权限被调整:Jenkins所用账号被移除仓库的拉取权限,或是仓库转为私有后未给该账号配置对应权限。
- 网络/代理异常:Jenkins服务器网络波动、代理配置变更,导致无法正常访问Git仓库地址。
- Git平台故障:Git平台临时维护、服务中断,造成仓库无法访问。
修复方案
1. 检查并更新Git凭证
- 进入Jenkins「凭证管理」,定位到对应仓库的访问凭证。
- 在Jenkins服务器终端手动执行
git clone <仓库地址>,用相同凭证测试是否能成功拉取。 - 若凭证失效,重新生成有效凭证:
- SSH密钥:重新生成密钥对,将公钥添加到Git平台账号的SSH设置中,替换Jenkins里的旧密钥。
- 用户名密码:更新为Git平台的有效账号密码,替换Jenkins中的对应凭证。
2. 核对并修正仓库地址
- 打开Jenkins项目配置,找到「源码管理」模块下的Git仓库URL。
- 与Git平台上的仓库实际URL对比,确认格式(HTTPS/SSH)、域名、仓库名完全一致。
- 若不一致,直接修改Jenkins中的仓库地址并保存配置。
3. 确认仓库权限配置
- 登录Git平台,检查Jenkins所用账号是否在仓库的成员列表中,且拥有「拉取(Read)」权限。
- 若仓库为私有,确认该账号未被移除权限组,权限配置正确。
4. 排查网络与代理问题
- 在Jenkins服务器执行
ping <仓库域名>(如ping github.com),验证网络连通性。 - 进入Jenkins「系统管理」→「全局代理配置」,检查代理地址、端口、凭证是否有效,必要时调整或关闭代理。
5. 检查Git平台状态
- 查看Git平台官方状态页面,确认是否存在服务中断或维护。
- 若为平台故障,等待服务恢复后重新执行构建。
内容的提问来源于stack exchange,提问作者Asif Siddiqui
相关产品推荐
相关产品推荐

