go - 查找模块的版本

标签 go go-modules gomock

我们正在使用 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/

相关文章:

generics - 复制 slice 的通用方法

git - 使用代理获取私有(private)仓库

go get -u github.com/onsi/ginkgo/ginkgo 突然开始抛出错误

go - 如何处理随机输入输出值

http - net/http.Request.URL.Host 返回空字符串

go - 如何通过 Kafka 生产者发送 Protobuf 消息

go - (来自 $GOROOT) ($GOPATH not set) in IntelliJ idea

go - PromQL 模块丢失

go - 模拟非接口(interface)函数

unit-testing - 如何在 golang 中注入(inject)一个 url 到 httptest.server?