(译)为什么要使用 Go 模块代理
引入Go模块之后,我以为这就是最终解决方案了。我很快意识到事实并非如此。最近,大家开始提倡使用Go模块代理。在研究了利弊之后,我得出结论,这是近年来最重要的变化之一。何处此言?是什么使Go模块代理如此特别?
在Go模块中,如果你添加了新的依赖项或者在没有缓存过的新机器上构建Go模块,则它将(go get
)下载go.mod
中的所有依赖项,并将其缓存以用于进一步的操作。可以通过使用vendor/
文件夹并编译时携带-mod=vendor
参数来绕过缓存(以及下载依赖项)。
但是这两种方法都不甚完美,我们有更好的方案。
……