• Golang 使用github托管go类库


    golang

    在golang开发中,我们经常会使用到其他组织或个人开源的golang框架或类库,例如github.com/spf13/viper,可直接使用命令将类库下载到本地的$GOPATH下:

    go get github.com/spf13/viper
    

    那么如何使用github托管自己的工具类库,便于其他人方便的使用呢?本篇即简单演示。

    1、创建github仓库托管go类库代码,例如common-go:

    image-20210302215309743

    2、将仓库克隆至本地:

    git clone https://github.com/vsixz/common-go.git
    

    3、初始化go类库的module:

    cd common-go
    go mod init github.com/vsixz/common-go
    

    注意:

    使用go env命令查看是否开启go-module功能,如果没开启需要设置环境变量:go env -w GO111MODULE=on

    module名称需要与github仓库一致,这样其他人才能通过go get github.com/vsixz/commmon-go下载到你的类库。

    4、编写go类库代码,例如:

    image-20210302220434035

    5、提交go代码到github:

    git add .
    git commit -m "add hello"
    git push -u origin main
    

    6、发行版本

    最佳实践是创建对应的版本发布分支,然后使用发布分支创建tag,发布:

    git checkout -b release/v1.x
    git push -u origin release/v1.x
    git tag v1.0.0 
    git push --tags
    

    此时,在github仓库release中可以看到发布的版本

    image-20210302222520925

    7、创建demo-go项目,测试使用go类库:

    go mod init demo-go
    

    在go.mod引入github.com/vsixz/common-go@v1.0.0

    image-20210302225614040

    调用github.com/vsixz/common-go库的hello.Say方法:

    image-20210302231322807

    8、运行:

    $ go run main.go
    test hello:
    Hello, Jay
    

    gzh

  • 相关阅读:
    delphi 实体类 JSON 数组 TJsonSerializer Deserialize
    IIS 禁止访问:在 Web 服务器上已拒绝目录列表
    ASP.NET 一般处理程序
    .net 架构
    delphi XE8 NetHTTPRequest NetHTTPClient
    ASP.NET web 应用程序项目
    HttpClient
    eclipse Android 开发基础 Activity 窗体 界面
    关闭 iTunes 自动同步
    could not be installed at this time
  • 原文地址:https://www.cnblogs.com/Med1tator/p/14472115.html
Copyright © 2020-2023  润新知