我有一个用 Go 编写的 工具,我将其发布在 Github 上并定期进行修订。工具链版本是 1.23,当我准备发布新版本时,我在 Git 中将其标记为
vX.Y.Z
并推送到 Github,之后可以使用 go install
命令安装它:
go install github.com/abelikoff/vidsim@latest
到目前为止,我发布了 1.X.Y 版本,一切都按预期工作。最近,我将版本升级到 2,用
v2.0.0
标签等标记我的工具。但是从那时起,我无法安装最新版本。相反,始终安装最后的 v1 版本。
当我检查该工具的 Github 页面时,我清楚地在 Github 上看到了新的 v2 标签。然而,根据 Go 工具链,只有 v1 标签可用:
$ go list -m -versions github.com/abelikoff/vidsim
github.com/abelikoff/vidsim v1.0.0 v1.1.0 v1.1.1 v1.1.2 v1.2.0 v1.3.0 v1.4.0
因此问题是:我错过了什么?是否有一个特殊的技巧来通知工具链我应该知道的新主要版本?附注尝试通过
GONOPROXY
强制安装也没有帮助:
模块文档说
如果模块以主版本 2 或更高版本发布,则模块路径必须以主版本后缀(如 /v2)结尾。这可能是也可能不是子目录名称的一部分。编辑 go.mod 中的模块路径以包含
/v2
后缀。使用
go install github.com/abelikoff/vidsim/v2@latest
安装命令,.