编程笔记

lifelong learning & practice makes perfect

go module

使用

  1. 状态
    auto,on和off

  2. 启用
    export GO111MODULE=on

  3. 固定版本号
    在go.mod里使用replace将任意版本的package替换为需要的版本

    1
    2
    3
    4
    5
    6
    7
    8
    module programnotes.cn/test
    go 1.13
    require (
    gorm.io/driver/mysql v1.1.3
    gorm.io/gorm v1.22.2
    )
    replace gorm.io/gorm => gorm.io/gorm v1.21.15
    replace gorm.io/driver/mysql => gorm.io/driver/mysql v1.0.5

    有些没节操的package不遵循规范,小版本改动不兼容导致线上bug,google的grpc就被吐槽过,这里将依赖设置成测试过的稳定版本可以减少依赖的package不兼容变更带来的问题.
    go get -u 解决依赖时可能改动项目中其他的package的版本,固定版本号也可以减少意外的版本变更,例如:这里升级gorm的版本也会改动mysql的版本.

欢迎关注我的其它发布渠道