Golang开源发布自己的包
1.前言
我们平时在Golang项目的编码过程中,除了经常通过import
使用官方提供的依赖包,也经常通过go get -u github.com/xxx/xxx
命令下载第三方包来使用。那么我们如何将自己封装的包开源发布出去,让所有人都可以像使用其他三方包一样使用我们的包呢?
2.新建仓库
首先在我们的 Github 上新建一个仓库,权限选择 Public(默认):
仓库创建成功后,我们得到仓库地址,通过git clone
命令或者Goland等IDE自带的工具将该项目拉到本地。
git clone https://github.com/china-li-shuo/shop_proto.git
3. 构建项目和代码
此时的项目是个空项目,选择使用Go mod的方式管理依赖包,对项目进行初始化:
go mod init github.com/china-li-shuo/shop_proto
请注意构建的项目名为:github域名/用户名/项目名(仓库名)
自己去编写自己的开源包代码:
4.提交和发布代码
在完成我们的代码编写后,即可上传Push到远程的Git仓库:
git add .
git commit -m "描述"
git push origin 自己分支名
#创建tag
git tag -a V0.0.1 -m 'shop_user_proto'
#推送tag
git push origin --tags
Push成功后,刷新GitHub上的仓库,确认项目代码已经上传,点击tag
创建releases发布一个版本!
输入版本号打上tag,完善描述信息后创建即完成发布:
5.引入和使用包
在成功发布我们的代码包后,便可以像平时使用第三方包一样直接go get下载和 import 导入后使用了:
#直接下载包
go get -u github.com/china-li-shuo/shop_proto
#下载包可以指定relase版本
go get -u github.com/china-li-shuo/shop_proto@V0.0.2
//项目引入自己的包就行了
package main
user_pb import " github.com/china-li-shuo/shop_proto"
func main() {
user_pb.方法名()
}
👏😄 另外,其实我更习惯使用国内的Gitee,和Github差不多,主要是不存在网络方面的问题~