我们正在使用 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
所以我需要以某种方式获取版本
最佳答案
基础知识 :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}'
关于go - 查找模块的版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59196227/