发布golang第三方包

简介: 发布golang第三方包

创建项目仓库


640 (1).jpg


  1. 首先输入仓库的名字,我这里输入simpleExample,用来做演示


  1. 这里选择public,公开。要不并不好拉


  1. 选择需要添加的文件(可选)


  1. 鼠标左键点击create repository创建此仓库


完成后就有一个名为simpleExample的项目仓库,如下图所示。


640 (2).jpg


如果第三步全都没选的话就是另外一个图了


这一步还是很简单的,毕竟github,全球最大的程序员交友网站不是。2110年了相信大家还是都会用的,是实在不会的,可自行百度,或者Google。


拉取仓库,编辑示例代码


640 (3).jpg


第一步,鼠标左键点击code


第二步,点击后面类似于粘贴板的东西,复制https的URL


然后在cd到GOPATH中使用git,把这个项目clone下来


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


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


执行成功后使用 ls命令查看一下


640 (4).jpg


使用编辑器打开simpleExample这个项目文件夹,如下图所示


640 (5).jpg


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)
            }
        })
    }
}


运行测试


640 (6).jpg


有个测试过了,说明我们的代码没有问题,也可以外部调用


推送与发布代码


使用以下命令,提交与push


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


640 (7).jpg


仔细对比就会发现,这里多了个exampleCode文件夹。到这里我们就已经将代码push到了github,接下来我们发布一个,这样我们可以在另外一个项目中以第三方包的形


使用


第一步,点击releases下面的create a new releases


640 (8).jpg


先 填写标签号(常规格式是 x.y.z)例如我的v0.0.1,


填写发表的标题,一般是项目名


填写简介


640 (9).jpg


然后鼠标左键点击 左下方的publish release,进行发布,发布完成后会自动跳转


如下图所示的发布栏


640 (10).jpg


640 (11).jpg


至此,发布部分就已经完成了。那么自己来测试一下这个第三方包


使用发布的第三方包


新建一个项目、go mod init初始化、创建文件夹就不过多赘述了


下载我们发布的包


640 (12).jpg


go get github.com/Golzaes/simpleExample/exampleCode


640 (13).jpg


在项目中import 这个包


小结


本文从创建仓库开始到发布第三方包后到使用第三方包,这样我们就可以跨项目使啦。


如果测试未完成,请重新查阅。尤其是注意点!!!

目录
相关文章
|
1月前
|
Go
安装golang
golang官网——
31 1
|
2月前
|
Go
Golang语言之包依赖管理
这篇文章详细介绍了Go语言的包依赖管理工具,包括godep和go module的使用,以及如何在项目中使用go module进行依赖管理,还探讨了如何导入本地包和第三方库下载的软件包存放位置。
34 3
|
5月前
|
Go Windows
golang hello 安装环境异常【已解决】
golang hello 安装环境异常【已解决】
36 1
|
5月前
|
移动开发 Go
golang bufio包怎么用?
`bufio` 是 Go 语言中用于提高 I/O 性能的包,它通过使用缓冲区减少对低效磁盘 I/O 操作的调用。简而言之,`bufio` 提供带缓冲的读写功能,减少读取或写入文件时的系统调用次数,从而提升程序性能。
|
Linux 编译器 Go
Golang 语言怎么安装多个 Golang 版本的环境?
Golang 语言怎么安装多个 Golang 版本的环境?
229 0
|
Shell Go Python
使用 gvm 来快速安装或者升级 golang 版本
使用 gvm 来快速安装或者升级 golang 版本
使用 gvm 来快速安装或者升级 golang 版本
|
Go 开发工具
Golang实战入门(一):安装和配置Golang
Golang实战入门(一):安装和配置Golang
356 0
|
Go 开发工具 Windows
GoLang的安装和使用
GoLang的安装和使用
328 2
|
存储 Go API
Golang模块版本管理
Golang模块版本管理
375 0
Golang模块版本管理
|
安全 Unix Linux
Golang环境安装
Golang环境安装
319 0