-2

我正在使用dep,但我被Go 1.11 中内置的Go Modules所吸引

在文档中,它说:

Go 1.11 包括对此处提议的版本化模块的初步支持。模块是 Go 1.11 中的一项实验性可选功能,计划在 Go 1.13 中整合反馈并最终确定该功能。尽管某些细节可能会发生变化,但未来的版本将支持使用 Go 1.11 或 1.12 定义的模块。

尽管如此,Go Modules 似乎被社区广泛使用,并且运行良好。

那么,对于一个新项目,我应该使用 Go Modules,还是应该坚持使用dep?我需要帮助才能做出决定。

4

1 回答 1

0

在我看来,你应该在开始一个新项目时切换到模块。Go 1.13 将于 8 月发布(大约 2 个月后),全面支持模块,包括 Go 模块镜像和校验和数据库的默认使用。

引用初步 Go 1.13 版本文档

Go 1.13 预计将于 2019 年 8 月发布。

从 Go 1.13 开始,go 命令默认使用 Go 模块镜像和 Google 运行的 Go 校验和数据库下载和验证模块。有关这些服务的隐私信息,请参阅https://proxy.golang.org/privacy ,有关配置详细信息的go 命令文档,包括如何禁用这些服务器或使用不同的服务器。

我看到越来越多的存储库添加了一个go.mod文件,这意味着它们已经过测试并且可以毫无问题地使用模块,即使它们没有go.mod文件,这并不意味着它们不能与模块一起使用,而是手动可能需要调整依赖关系或供应商。

另外不要忘记:即使您现在不开始在新项目中使用模块,您也可以在将来随时切换到模块,没有人阻止。但是,如果您从第一天开始学习模块,您将为自己节省一些工作。

于 2019-06-21T09:37:42.553 回答