go - 强制 `go get` 和 `go install` 使用缓存,即使它是古老的

标签 go go-get goinstall

是否有 go get 的标志?或 go install强制那些使用缓存,即使缓存很旧/古老?我们正在使用 docker images/multi-stage build 来缓存 deps,而这些原始文件可能已有数周或数月的历史。

最佳答案

go.mod 可能会记录您依赖的具体版本或提交。如果您需要旧版本的 deps,请在您的 go.mod 中明确声明它们,即使您的依赖项不断发展,您也会获得可重现的构建。

如果您需要 go get foo@123456 依赖项的 123456 提交,请使用 foo

如果您需要依赖项的 go get foo@v0.1.2 版本,请使用 v0.1.2。这些将被记录在 go.mod 中,无论您在何处/何时构建模块,它都将始终使用这些版本。

有关详细信息,请参阅 Go Wiki: Modules: How to Upgrade and Downgrade Dependencies

关于go - 强制 `go get` 和 `go install` 使用缓存,即使它是古老的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59833122/

相关文章:

go - 生产中的 vue-router(使用 Go 服务)

go - 在 Go 中显示分页小部件

golang 相当于 ansi c raise()

go - `go get cloud.google.com/go/cloudtasks/apiv2`的一些问题;未定义: grpc. RoundRobin

go - 如何以正确的方式组织你的 Go 项目?

go - web.go 安装错误

mongodb - 如何使用 mgo 和 Go 查询 MongoDB 的日期范围?

go - 无法运行 goinstall

去安装。执行自定义操作