我們正在使用 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 關注
- 212 瀏覽
添加回答
舉報
0/150
提交
取消