• 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

  • 相关阅读:
    OneProxy与其它数据库中间件的对比
    防御式编程
    google jam 比赛题(设计有问题)
    Python 代码性能优化技巧
    Python性能鸡汤
    如何避免重构带来的危险
    Linux/Unix工具与正则表达式的POSIX规范
    代码抽象层次2
    chinaunix:腾讯面试题
    C++异常处理小例
  • 原文地址:https://www.cnblogs.com/dpio/p/14472115.html
Copyright © 2020-2023  润新知