Go Module 是 golang 的包管理器,类似 python 的 pip, nodejs 的 npm...
我们可以通过 go mod
去进行操作
go mod init
初始化一个 project
go mod download
下载依赖
go mod tidy
整理现有依赖
go mod graph
查看依赖结构
go mod vendor
导出依赖到 vendor 目录
go mod verify
检测下载的依赖是否被篡改
go mod why
查看为什么需要某依赖
go env 查看环境变量
go env -w 进行环境变量设置
# 打开 Go Module
go env -w GO111MODULE=on
# GOPROXY 代理,direct 表示:如果代理没找到对应依赖,就到源去寻找
go env -w GOPROXY=https://goproxy.cn,direct
# GOSUMDB 用于校验
# 如果设置代理,这个变量不用设置。代理的网站可以校验
# GONOPROXY 不需要代理的仓库
# GONOSUMDB 不需要校验的仓库
# GOPRIVATE 设置私有仓库
# 以上三个仓库只需要设置 GOPRIVATE 就可以了
go env -w GOPRIVATE=‘*.example.com,*.example2.com‘
# 可以进行正则匹配,多个仓库使用逗号分隔。GOPRIVATE不需要走镜像和校验
go mod init github.com/<username>/go_test
注意用户名填写自己的
go.sum 罗列了当前项目直接或间接依赖的所有模块,并保证所有依赖不被篡改
go.sum 有两种校验方式:
go mod edit -replace=xxxx.1.1=xxxx.1.2
(这个命令会更改 go.mod 文件,replace 会重定向到新的版本)原文:https://www.cnblogs.com/owenqing/p/14399609.html