Go 有一个很好的功能,你可以go install <x>
下载、构建和安装二进制文件。
例如,在我的本地 Windows PC 上,go install github.com/goreleaser/goreleaser
将找到 goreleaser 的最新版本,下载、构建并将其安装到我的本地二进制文件路径。
我正在开发一个我们希望启用的项目go install
,但如果 github 存储库名称与可执行文件名称不匹配,则会遇到问题。GitHub CLI 本身遇到了完全相同的问题:
例子:
go install github.com/cli/cli@latest go: downloading github.com/cli/cli v1.14.0 go: github.com/cli/cli@latest: module github.com/cli/cli@latest found (v1.14.0), but does not contain package github.com/cli/cli
有办法解决这个问题吗?
更新:我发现我可以通过它的子目录直接引用包。在我的特定实例中,这有效:go install github.com/OctopusDeploy/cli/cmd/octopus@latest
这有点不愉快,但可以正常工作。它不适用于 github CLI,因为他们的 go.modreplace
中有一个指令:-(
问题:这可以做得更好吗?有没有办法放置某种别名或配置文件,以便go install github.com/OctopusDeploy/cli@latest
可以代替使用go install github.com/OctopusDeploy/cli/cmd/octopus@latest
?
繁星coding
相关分类