我的go项目包含许多组件。每个组件都有其自己的供应商目录,该目录由dep
填充。由于组件具有相似的依赖性,因此供应商目录中存在大量重复项。
此外,供应商相当大:〜20MB。
我的想法是通过在项目顶部定义通用供应商来减少存储库的大小。
project
vendor
|--component1
|----main.go
|----vendor
|--component2
|----main.go
|----vendor
每个组件仅需要定义特定于他的依赖项。
为了不在组件级执行的每个dep ensure
上提供通用的依赖关系,我们可以在Gopkg.toml文件中指定应忽略哪些软件包:
ignored = ["github.com/aszecowka/calc"]
问题:有人使用这种方法吗?有其他选择吗?
更新上下文: 在我的公司中,我们正在研究monorepo方法,我们尝试合并不同的go项目,但最终导致了一个非常庞大的存储库-主要是因为有许多供应商目录