Go : golang发布三方包流程简介
创始人
2024-02-09 04:47:11

文章目录

    • 一、创建项目仓库
    • 二、拉去仓库,编辑代码
    • 三、推送与发布代码
    • 四、使用发布的第三方包
    • 小结


一、创建项目仓库

1.输入仓库的名字,我这里输入simpleExample,用来做演示
2.选择public,公开。要不并不好拉
3.选择需要添加的文件(可选)
4.点击create repository创建此仓库
在这里插入图片描述

完成后就有一个名为simpleExample的项目仓库,如下图所示。
在这里插入图片描述

二、拉去仓库,编辑代码

1.点击code, 复制https的URL
2.使用git,把这个项目clone下来
在这里插入图片描述

例如,我在这里的使用的git命令如下

git clone https://github.com/Golzaes/simpleExample.git

3.go module初始化

+ go mod init "github.com/Golzaes/simpleExample"
- go mod init "github.com/组织名/项目名" 

注意:这里的一定是"github.com/组织名/项目名"这样的格式

4.示例代码

// Example/example.go
package exampleCodeimport "math/rand"// ReadNumber create random number
func ReadNumber() int {// random number rangernr := 10//  returns, as an int, a non-negative pseudo-random number in [0,n)return rand.Intn(rnr)
}

注意这里的函数名ReadNumber,首字母必须大写!!!否则无法再外部调用此函数

来个简单的单元测试

// Example/example_test.go
package exampleCodeimport "testing"func TestReadNumber(t *testing.T) {tests := []struct {name stringwant 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)}})}
}

5.运行调试
在这里插入图片描述

三、推送与发布代码

1.提交代码

git add exampleCode/
git commit -am "add exampleCode"
git push origin master

在这里插入图片描述
2.发布包
点击releases下面的create a new releases
在这里插入图片描述

填写标签号(常规格式是 x.y.z)例如我的v0.0.1,填写发表的标题,一般是项目名,填写简介
在这里插入图片描述

点击 左下方的publish release,进行发布,发布完成后会自动跳转到如下图所示的发布栏
在这里插入图片描述
至此,发布部分就已经完成了。那么自己来测试一下这个第三方包

四、使用发布的第三方包

1、新建一个项目、go mod init初始化、创建文件夹就不过多赘述了
2、下载我们发布的包

go get github.com/Golzaes/simpleExample/exampleCode

3、import包并且测试
在这里插入图片描述

小结

本文从创建仓库开始到发布第三方包后到使用第三方包,这样我们就可以跨项目使用啦。如果测试未完成,请重新查阅。尤其是注意点!!!

参考: https://www.freesion.com/article/52741516937/

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...