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

Jenkins中出现‘Command "git clean -ffdx"返回状态码1’该如何解决?

解决Jenkins任务中git clean -ffdx因Go包权限失败的问题

方案1:调整Jenkins执行用户的目录权限

Jenkins任务默认以jenkins用户运行,大概率是该用户没有Go模块缓存目录的删除权限。直接修改目录归属即可:

sudo chown -R jenkins:jenkins /path/to/your/job/workspace/go/pkg/mod

临时应急的话,也可以直接放开目录写权限(不推荐长期使用,存在安全风险):

sudo chmod -R u+w /path/to/your/job/workspace/go/pkg/mod

方案2:让git clean跳过Go模块缓存目录

没必要让git处理Go的模块缓存,直接在clean命令中排除该目录:

git clean -ffdx --exclude=go/pkg/mod

或者在项目根目录的.gitignore中添加go/pkg/mod/,这样git clean默认就不会操作这个目录。

方案3:用Go官方命令清理模块缓存

Go本身提供了专门清理模块缓存的命令,比git clean更适配这类场景。把Jenkins任务里的git clean -ffdx替换为:

go clean -modcache

如果还要清理其他文件,可以组合执行:

go clean -modcache && git clean -ffd

方案4:检查是否有进程锁定文件

文件被其他进程占用也会导致删除失败,在Jenkins运行节点上用lsof排查锁定的文件:

lsof /path/to/go/pkg/mod/github.com/jfrog/build-info-go@v1.6.0/build/testdata/npm/_cacache/content-v2/sha512/32/d8

找到对应进程ID后杀掉,再重新执行任务。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 10:55:26