在 Ubuntu 上清理 Golang 编译缓存,常见有以下几种方式:
go clean -cache
只清理下载的模块缓存:
go clean -modcache
两个一起清:
go clean -cache -modcache
Go 的缓存默认位置:
# 编译缓存
rm -rf "$(go env GOCACHE)"
# 模块缓存
rm -rf "$(go env GOMODCACHE)"
查看当前路径:
go env GOCACHE
go env GOMODCACHE
go clean -testcache
用于强制重新运行测试(即使代码没变)
go clean -cache -modcache -testcache
构建时加:
RUN go clean -cache
或挂载空卷避免缓存。
| 场景 | 命令 |
|---|---|
| 清编译缓存 | go clean -cache |
| 清模块缓存 | go clean -modcache |
| 清测试缓存 | go clean -testcache |
| 全清 | go clean -cache -modcache -testcache |
如果你是 CI / 构建慢 / 磁盘占用大 的场景,可以告诉我,我可以给你更具体的建议。