首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >锁定Go中第三方包的特定版本

锁定Go中第三方包的特定版本
EN

Stack Overflow用户
提问于 2020-06-20 21:24:43
回答 2查看 3K关注 0票数 2

使用模块时,当我试图使用以下命令锁定特定版本的包时:

代码语言:javascript
复制
go mod edit -require "google.golang.org/grpc@v1.10.0"

它在require文件中的go.mod部分下面显示了如下内容:

代码语言:javascript
复制
google.golang.org/protobuf v1.10.0

然后当我跑的时候

代码语言:javascript
复制
go mod vendor

它总是删除最新的版本,目前是v1.24.0。在require文件中的go.mod部分下面显示:

代码语言:javascript
复制
google.golang.org/protobuf v1.24.0

不管发生什么情况,是否有办法锁定特定的版本?

我目前使用的是go版本1.14.3。

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-06-20 22:58:26

似乎可以告诉go mod只获得指定的版本,而不影响版本。

代码语言:javascript
复制
go -mod=readonly mod vendor

可在以下网站找到:https://github.com/thepudds/go-module-knobs/blob/master/README.md

票数 2
EN

Stack Overflow用户

发布于 2020-06-21 02:30:22

解决此问题的一种方法是,一旦对go mod文件进行了特定的更改,就执行go build。这将确保将go.sum文件内置到代码库中。这不过是你拿来的包的校验和。通过这样做,所有未来的拉将匹配go.sum文件的校验和。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62491865

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档