最新发布

Go Workspace 快简教程

先说一下,为什么我需要 Go workspace。 在 github.com/x-mod 中,我写了非常多的基础包/工具包,有公有的,也有很多私有的。

在日常项目中,会大量的使用到这些基础包。 项目、基础包之间的关系图常常是这样的:

项目实际关系图只会比这个复杂。这时,如果需要修改底层包,比如说 G , 所有在 项目包 中虽然是直接使用,但是同时,它又被 F 包使用,而 F 包又被 C 包使用。 更新 G 后,同时 F 包和 C 包需要更新相应的 G 包版本号,虽然最终这些包是需要做相应升级的。

但是,如果在 项目包 的开发过程中,频繁的进行底层包以及关联包的版本升级,很快就会让人厌烦 Go Module 的。

所以,Go workspace 的出现,很大程度解决了开发过程中频繁升级基础依赖包版本的问题。

... 阅读全文

目录导航