Ale*_*eau 6 publish go go-packages
我一直在尝试为我的 Web 应用程序创建和发布 golang SDK:https://datelist.io 一切都在我的本地设置上运行良好。然而,一旦我想将我的 SDK 发布到https://pkg.go.dev/网站,事情就开始变得更加困难
我想发布的代码可以在那里找到:github.com/datelist/datelist-sdk-golang
我读过一些教程,如果我理解正确的话,我所需要的就是:
我尝试了不同的方法来索引我的更改,并且根据该链接: https: //go.dev/about/ 一旦解决方案是访问该页面: https: //proxy.golang.org/MYMODULE_PATH
我因此尝试过: https://proxy.golang.org/github.com/datelist/datelist-sdk-golang/@v/v1.0.0.info
但是,我遇到以下错误:
not found: github.com/datelist/datelist-sdk-golang@v1.0.0: invalid version: unknown revision v1.0.0
我尝试过不同的事情。我在我的 github 存储库上发布了两个标签:v1.0.0 和 1.0.0,但它不起作用。我已经检查过:我的代码看起来有效,并且该版本似乎存在,因为我可以访问: https: //proxy.golang.org/github.com/datelist/datelist-sdk-golang/@v/ce18fa0756c2。 然而,在将我的 SDK 添加到 go.dev 时,我陷入了困境
提前致谢
您的go.mod(最新提交ce18fa)模块名称不正确(/v1.0.0不需要):
module github.com/datelist/datelist-sdk-golang/v1.0.0
Run Code Online (Sandbox Code Playgroud)
git release 标记处的go.mod指向v1.0.0不datelist.io/sdk存在的导入路径:
module datelist.io/sdk
Run Code Online (Sandbox Code Playgroud)
将您的内容更新go.mod为以下内容(有效 URL - 无标签后缀):
module github.com/datelist/datelist-sdk-golang
go 1.16
Run Code Online (Sandbox Code Playgroud)
然后 git tag 这个提交的版本v1.0.1,这应该能让你的模块工作。
然后,您图书馆的消费者可以:
go get github.com/datelist/datelist-sdk-golang
Run Code Online (Sandbox Code Playgroud)
或明确地:
go get github.com/datelist/datelist-sdk-golang@v1.0.1
Run Code Online (Sandbox Code Playgroud)
前者semver通过 git 标签隐式选择最新版本 -v1.0.1在本例中。