Skip to content

GO1.13MODULES使用 #13

Description

@snxq

千呼万唤始出来,GO1.13 这个月终于发布了。

说下在 cn 正确使用 MODULES 的方式。

设置方式

go env -w GOPROXY=https://goproxy.cn,direct 这一句运行即可,注意的是会被环境变量覆盖掉。

GOSUMDB

如果设置了 goproxy.cn, 那么 GOSUMDB 就不用设置了。

GOSUMDB 默认是https://sum.golang.org, 在 cn 可以使用 https://sum.golang.google.cn/。 运行 go env -w GOSUMDB=https://sum.golang.google.cn/ 即可。

私有库

go 提供了 GONOPROXY、GONOSUMDB 还有 GOPRIVATE 三个参数针对私有库。

GOPRIVATE 可以设置一个以逗号分割的列表,其中匹配的所有网址都将作为私有库被信任,因此不与 sumdb 对比。

GONOSUMDB 和 GONOPROXY 接受相同的列表,覆盖掉 GOPRIVATE 的值。这两者提供了更细致的私有库控制,可以选择性的私有库不走代理或者不检查 sum 。

Example 1:

GOPRIVATE=git.example.com,git.example.cn

Example 2:

GONOSUMDB=git.example.com

如上例1,这样设置的话,就会将 git.example.com 和 git.example.cn 通通认为是私有库,也就不走代理和 sumdb 验证了。

例2只设置了 GONOSUMDB,那么 git.example.com 还是会走代理,但是不会走 sumdb 验证。 GONOPROXY 同理。

详细文档可以在 GO1.13 中运行 go help module-private 查看。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions