我们正在使用 Go 模块。我想在 CLI 中获取模块的特定版本。是否可以?如果你好奇的话,原因是我想添加以下generate命令://go:generate go run github.com/golang/mock/mockgen -source="$GOPATH/pkg/mod/mymodules.com/mymodule@${VERSION}/module.go" -destination=module_mock.go所以我需要以某种方式获取版本
3 回答

宝慕林4294392
TA贡献2021条经验 获得超8个赞
基础知识:
go list -m all
— 查看将在构建中使用的所有直接和间接依赖项的最终版本
go list -u -m all
— 查看所有直接和间接依赖项的可用次要升级和补丁升级
示例:
要获取特定模块的版本,假设golang.org/x/text
go list -m all | grep golang.org/x/text | awk '{print $2}'
或者
go list -u -m all | grep golang.org/x/text | awk '{print $2}'
所以,一般方式:
go list -u -m all | grep <module-name> | awk '{print $2}'

米脂
TA贡献1836条经验 获得超3个赞
迟到但值得一提的是,如果您想检查特定模块的所有可用版本:
go list -m -versions <module_name>
喜欢:
go list -m -versions github.com/user/module-name

慕神8447489
TA贡献1780条经验 获得超1个赞
go
此命令将获取项目中使用的版本。
[$]> grep -m 1 go go.mod | cut -d\ -f2
这将输出一个类似的版本1.18
。
- 3 回答
- 0 关注
- 172 浏览
添加回答
举报
0/150
提交
取消