请问如何让 go mod 对某些私有 module 跳过 GOPROXY 代理?

共 8 个回复


duantao561

replace 成本地module

# 0

fising

私有 module 是放置在 gitlab 上面的。

# 1

newmin

在本地开发时,使用replace. 编译时候用sed取消replace

https://github.com/ixre/go2o/blob/master/go.mod

# 2

fising

现在我们的解决办法是使用 vendor 模式,将 vendor 目录增加到源码仓库里。

# 3

HobaiRiku

我们也有这种情况,所以一般我们开发都搭个梯

# 4

sjt_xfwh

If your Go version >= 1.13, the GOPRIVATE environment variable controls which modules the go command considers to be private (not available publicly) and should therefore not use the proxy or checksum database. For example:

go env -w GOPROXY=https://goproxy.io,direct
# Set environment variable allow bypassing the proxy for selected modules
go env -w GOPRIVATE=*.corp.example.com
# 5

fising

感谢楼上。

# 6

zhr607

安装一个这个
https://github.com/gomods/athens

# 7