发布包是与世界分享您的工具的好方法。有人可以导入该包并在他们的项目中使用它,并实现您构建的功能。与其他语言相比,发布 Golang 包非常容易。我们将在这个博客中做到这一点。我最近发布了我的 GenCLI 包,您可以在这里查看。
出于演示目的,我有这个 CLI 项目。这个由人工智能驱动的 CLI。它通过使用 Cobra 和 Google Gemini API 构建的终端为您提供问题的答案。现在这个项目是本地的,运行它的唯一方法是转到项目的根目录并执行 go run main.go,然后使用子命令。它会工作得很好,但这里的问题是这并不可靠,每次我们都需要转到项目根目录并运行它,理想情况下,它应该从计算机上的任何位置运行,就像其他 CLI 工具一样。另外,并不是每个人都会这么麻烦地使用它。因此,这就是为什么发布这些工具是必要且重要的。
可以采用多种方式来命名您的包,但由于我们将在 GitHub 上托管它,因此我们将使用 GitHub 方式。确保您的 go.mod 文件中的模块名称符合以下约定 - github.com/
需要注意的一点是,模块是 Packages 的集合。我们通常说发布模块而不是包,但为了简单起见,我们保持这种方式。
module github.com/Pradumnasaraf/go-ai go 1.22 require ( .... .... .... )
现在,一切设置完毕后,将您的代码推送到 GitHub。确保将代码推送到您在模块中提到的相同 GitHub 用户名和存储库名称。
将代码推送到 GitHub 后,现在就可以发布您的包了,但在此之前,您应该遵循以下一些最佳实践
许可证:拥有许可证并尝试对其施加最小的限制,以便可以轻松使用、修改和重新分发。
文档: 我们可以在包文件的顶部进行注释来解释功能,golang 将其作为通用包文档并将其显示在包文档部分下。
标签: 当一个人拥有特定版本的包时,标记是很好的选择,并且标记的版本可以在构建过程中提供可预测的结果。标签应遵循 Semver。另外,尽量发布1.0.0及以上的稳定版本,这给开发者信心。
现在将包发布到 URL https://pkg.go.dev/github.com/
完成后,几个小时后,它将出现在网站上。一旦上线,您可以使用 go install 命令下载 CLI:
go installgo install github.com/Pradumnasaraf/go-ai@latest
本博客就是这样。我很高兴你还在阅读并且也成功了。谢谢你!我有时会在 Twitter 上分享有关 Golang 的技巧。你可以在那里与我联系。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3