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

Jenkins构建成功但Git文件未同步到工作区,报错无法获取提交信息

Jenkins Git拉取显示构建成功但工作区无文件、报MissingObjectException错误解决方案

错误本质

该org.eclipse.jgit.errors.MissingObjectException: Missing unknown [commit id]报错,是Jenkins Git插件内部调用逻辑冲突导致:拉取代码时调用了本地安装的命令行Git,但读取提交信息时调用了内置的JGit实现,二者数据不互通导致JGit识别不到已经拉取的commit对象,最终checkout操作未生效、工作区无文件,且任务误判为构建成功。

具体解决方案

  • 切换Git客户端实现为命令行模式
    操作路径:进入Jenkins「系统管理」→「全局工具配置」→找到Git配置项,将「Git 实现」下拉选择改为「命令行 Git」,不要使用「JGit」或「自动选择」选项,保存配置后重启Jenkins服务。
  • 清理工作区并开启强制克隆
    操作路径:进入对应任务页面,点击左侧「工作区」→「清除工作区」清空残留文件;再进入任务配置页,找到「源码管理」→「Git」的高级设置,勾选「检出前清空工作区」、「强制克隆(丢弃本地工作区)」两个选项,保存后重新构建。
  • 校验分支配置与远程仓库一致性
    日志显示当前任务配置拉取的是origin/main分支,需要确认你的GitHub仓库默认分支确实为main(部分旧仓库默认分支为master):进入任务配置→「源码管理」→「Git」→「分支指定」,填写与远程仓库匹配的分支规则,如远程为main则填*/main,为master则填*/master,避免拉取不存在的分支导致commit缺失。
  • 升级Git相关组件版本
    你当前使用的Windows Git版本为2.32.0.windows.2,属于较老版本,先升级本地Windows环境的Git到最新稳定版;再进入Jenkins「插件管理」,升级「Git Plugin」和「Git Client Plugin」到最新发布版本,重启Jenkins后重新执行构建。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 18:54:04