如果 Go 存储库有go.mod
文件位于其根目录中,也位于子文件夹中,子模块的版本是如何发布的?
举例来说,我的团队一直在使用 Vault 来开发我们的内部 cli 工具。
我们最终使用了:
github.com/hashicorp/vault/api
and
github.com/hashicorp/vault/commands
github.com/hashicorp/vault
我正在尝试将Vault/api更新到最新版本1.3.3:
github.com/hashicorp/vault v1.3.3
github.com/hashicorp/vault/api v1.3.3
问题是我得到:
go: github.com/hashicorp/vault/[email protected]: reading github.com/hashicorp/vault/api/api/go.mod at revision api/v1.3.3: unknown revision api/v1.3.3
我认为这是由这个根模块和冲突引起的。
子模块的版本不一定与父模块的版本同步。它们应该被视为完全独立的模块,恰好位于同一存储库/目录结构中。
Check https://github.com/hashicorp/vault/releases对于官方版本/标签——Go 支持分层 Git 标签来标记子模块的版本。例如,虽然截至今天的最新版本vault
本身是1.3.3,我只找到vault/api
v1.0.4(这是最新的标签api/v1.0.4
)
只需做一个go get
获取其最新版本。最初导入时,您实际上不必在 go.mod 中指定版本 -go
工具将为您找到最新版本。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)