drone ci 在构建的时候git报错 protocol error: bad pack header
remote: error: inflate: data stream error (incorrect data check)
remote: error: corrupt loose object '3d797970eb40c41b0405613dc0cdb3705f38e0c8'
remote: fatal: loose object 3d797970eb40c41b0405613dc0cdb3705f38e0c8 (stored in ./objects/3d/797970eb40c41b0405613dc0cdb3705f38e0c8) is corrupt
remote: aborting due to possible repository corruption on the remote side.
fatal: protocol error: bad pack header
这种情况主要是因为内存不足的问题导致的,在网上查询了一下,说要手动指定git资源:
git config --global pack.windowMemory
git config --global pack.windowMemory "100m"
git config --global pack.packSizeLimit "100m"
git config --global pack.threads "1"
但这样是行不通的,由于 Drone CI 在构建的时候默认就会启动一个docker去拉取数据,这时候的git并不会使用上面的配置。归根结底是因为内存不足的问题,所以手动释放一下内存即可:
echo 3 >/proc/sys/vm/drop_caches,由于我们公司的服务器是ubuntu,有时候会出现权限问题,执行命令:sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
执行以上命令后发现缓存已经清除,再次构建成功。
声明: 因编程语言版本更新较快,当前文章所涉及的语法或某些特性相关的信息并不一定完全适用于您当前所使用的版本,请仔细甄别。文章内容仅作为学习和参考,若有错误,欢迎指正。
开发者
专题·造轮子
编程笔记·热门
相关文章
-
windows wsl 子系统 ubuntu 安装 golang 服务器
09-25
-
git 多帐户登录操作
09-24
-
debian 更换镜像源
09-24
-
drone CI/CD 时的特殊配置
08-25
-
Linux 通过 ntp 命令同步时间
08-03