Jenkins SCM模块添加仓库时执行git.exe ls-remote -h命令报错如何解决
Jenkins Git仓库连接报错
git.exe ls-remote -h故障排查方案 报错原文:Failed to connect to repository : Error performing git command: git.exe ls-remote -h
1. 基础环境校验
- 首先确认Jenkins运行节点已正确安装Git:在节点命令行执行
git --version,确认返回正常版本号,无命令不存在类报错 - 核对Jenkins全局Git路径配置:进入「Manage Jenkins >> Global Tool Configuration >> Git」页面,确认
Path to Git executable填写的是Git可执行文件的绝对路径,不可仅填写git.exe。Windows节点可通过命令行执行where git获取准确路径,路径分隔符推荐使用正斜杠/,示例:C:/Program Files/Git/bin/git.exe
2. 仓库配置与权限校验
- 确认填写的仓库地址格式正确:
- HTTPS协议地址格式为
https://<Git服务域名>/<命名空间>/<仓库名>.git - SSH协议地址格式为
git@<Git服务域名>:<命名空间>/<仓库名>.git
禁止直接填写仓库的网页端访问地址
- HTTPS协议地址格式为
- 验证仓库访问权限:
- 使用HTTPS协议的场景:确认配置的用户名、密码/访问Token未过期,且对应账号对目标仓库有读权限
- 使用SSH协议的场景:确认Jenkins运行用户家目录下
.ssh文件夹中的SSH公钥已添加到Git服务的可信密钥列表,且在Jenkins运行用户的命令行下直接执行git ls-remote -h <你的仓库地址>可以正常返回结果,无权限类报错
3. 特殊场景排查
- 网络校验:如果Git服务需要代理访问,确认Jenkins节点的系统代理、Git全局代理配置与仓库访问要求一致;内网仓库需确认节点可以正常访问Git服务的对应端口
- 特殊字符转义:如果仓库地址、认证信息中包含特殊符号,确认已做正确转义,避免解析错误
- 插件版本校验:检查Jenkins Git插件版本,升级至最新稳定版规避已知兼容性bug
内容的提问来源于stack exchange,提问作者A Aryan
相关产品推荐
相关产品推荐

