今天遇到个问题

依赖的模块相同版本 checksum 更新后,无论本地 go mod init & go mod vendor(不过我没提交本地的 vendor 文件夹),push 到 gitlab 上,CI 都会校验 checksum 出错

但 CI 上每次都是新下载的依赖,因此是本地的 checksum 出现了问题

具体原因好像是,go 的模块有 cache,然后是按版本来的。。。也就是相同版本都是一个 cache,无论你 checksum 是否有变化。

所以就导致模块那边更新了 checksum 但没更新 tag 的时候,本地的 checksum 由于拉的 cache 导致不更新。。

解决方法就是,在本地运行

go clean -modcache && go mod tidy

欢迎留言>_<

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据