GO语言GO modules模式
LDK Lv5

go mod 命令

可以通过 go mod help 命令查看所有 go mod 指令

命令作用
go mod init生成 go mod 文件
go mod download下载 go mod 文件中指明的所有依赖
go mod tity整理现有的依赖
go mod graph查看现有的依赖结构
go mod edit编辑 go mod 文件
go mod vendor导出项目所有的依赖到 vendor 目录
go mod verify校验一个模块是否被篡改过
go mod why查看为什么需要依赖某模块

go mod 环境变量

可以通过 go env 命令查看。

1
2
3
4
5
6
7
8
9
10
11
12
ldk@192:~/go/bin$ go env
...
GO111MODULE=''
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/home/ldk/go/'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/usr/lib/golang'
GOSUMDB='sum.golang.org'
...

上面列出的环境变量是比较重要的环境变量,会影响 go mod 的模式

GO111MODULE

可以设置3个值:

  • auto: 如果项目包含了 go mod 文件,则启用 go modules.
  • on: 启用 go modules. 推荐设置
  • off: 禁用 go modules

通过命令来设置:

1
go env -w GO111MODULE=on

也可以通过 Linux 环境的 export 指令配置

GOPROXY

给go modules设置代理,方便拉取模块

阿里云:

1
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct

GOSUMDB

用于在拉取模块时进行校验,防止模块被篡改。也可以被GOPROXY代理

GONOPROXY/GONOSUMDB/GOPRIVATE

用于设置 不需要代理/不需要校验/私有 的模块

由 Hexo 驱动 & 主题 Keep
本站由 提供部署服务
总字数 101.7k 访客数 访问量