为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
翻翻过去那场雪 2022-06-13 15:07:25
使用模块,当我尝试使用以下命令锁定特定版本的包时:go mod edit -require "google.golang.org/grpc@v1.10.0"它require在文件的部分下显示了这一点go.mod:google.golang.org/protobuf v1.10.0然后当我运行时:go mod vendor它总是拉下当前的最新版本v1.24.0。在文件中的require部分下,go.mod它显示:google.golang.org/protobuf v1.24.0无论如何,有没有办法锁定特定版本?我目前正在使用 go 版本 1.14.3。
查看完整描述

2 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

似乎可以告诉 go mod 只获取指定的版本而不碰撞版本。

go -mod=readonly mod vendor

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


查看完整回答
反对 回复 2022-06-13
?
侃侃无极

TA贡献2051条经验 获得超10个赞

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



查看完整回答
反对 回复 2022-06-13
  • 2 回答
  • 0 关注
  • 704 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号