创建项目仓库
- 首先输入仓库的名字,我这里输入simpleExample,用来做演示
- 这里选择public,公开。要不并不好拉
- 选择需要添加的文件(可选)
- 鼠标左键点击create repository创建此仓库
完成后就有一个名为simpleExample的项目仓库,如下图所示。
如果第三步
全都没选的话就是另外一个图了
这一步还是很简单的,毕竟github,全球最大的程序员交友网站不是。2110年了相信大家还是都会用的,是实在不会的,可自行百度,或者Google。
拉取仓库,编辑示例代码
第一步,鼠标左键点击code
第二步,点击后面类似于粘贴板的东西,复制https的URL
然后在cd到GOPATH中使用git,把这个项目clone下来
例如,我在这里的使用的git命令如下
git clone https://github.com/Golzaes/simpleExample.git
执行成功后使用 ls
命令查看一下
使用编辑器打开simpleExample
这个项目文件夹,如下图所示
go module初始化
+ go mod init "github.com/Golzaes/simpleExample" - go mod init "github.com/组织名/项目名"
注意:这里的一定是"github.com/组织名/项目名"
这样的格式
创建文件夹与示例代码
// Example/example.go package exampleCode import "math/rand" // ReadNumber create random number func ReadNumber() int { // random number range rnr := 10 // returns, as an int, a non-negative pseudo-random number in [0,n) return rand.Intn(rnr) }
注意这里的函数名
ReadNumber
,首字母必须大写!!!
否则无法再外部调用此函数
来个简单的单元测试
// Example/example_test.go package exampleCode import "testing" func TestReadNumber(t *testing.T) { tests := []struct { name string want int }{ // TODO: Add test cases. { "exampleCode1", 1, }, { "exampleCode2", 2, }, { "exampleCode3", 3, }, { "exampleCode4", 4, },{ "exampleCode5", 5, }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { if got := ReadNumber(); got != tt.want { t.Errorf("ReadNumber() = %v, want %v", got, tt.want) } }) } }
运行测试
有个测试过了,说明我们的代码没有问题,也可以外部调用
推送与发布代码
使用以下命令,提交与push
git add exampleCode/ git commit -am "add exampleCode" git push origin master
仔细对比就会发现,这里多了个exampleCode
文件夹。到这里我们就已经将代码push到了github,接下来我们发布一个,这样我们可以在另外一个项目中以第三方包的形
使用
第一步,点击releases下面的create a new releases
先 填写标签号(常规格式是 x.y.z)例如我的v0.0.1
,
填写发表的标题,一般是项目名
填写简介
然后鼠标左键点击 左下方的publish release
,进行发布,发布完成后会自动跳转
如下图所示的发布栏
至此,发布部分就已经完成了。那么自己来测试一下这个第三方包
使用发布的第三方包
新建一个项目、go mod init初始化、创建文件夹就不过多赘述了
下载我们发布的包
go get github.com/Golzaes/simpleExample/exampleCode
在项目中import 这个包
小结
本文从创建仓库开始到发布第三方包后到使用第三方包,这样我们就可以跨项目使啦。
如果测试未完成,请重新查阅。尤其是注意点!!!