8.6 查看依赖关系源代码 #
通过转移到Hugo模块,我们失去了检查依赖项的源代码的能力。 另外,由于依赖关系不是网站源代码的一部分,因此我们的网站将需要internet访问才能进行编译。
在某些场景中,对互联网的依赖可能成为一种限制。 如果我们将网站存档以进行长期存储,则备份依赖项的副本与备份源代码一样重要。
要执行此任务,我们可以运行Hugo mod Vendor。 Hugo使用所有依赖项的源代码创建了一个名为vendor的文件夹。 不仅如此,如果这个文件夹存在并包含依赖项,Hugo就不会去互联网上建立我们的网站。 我们可以用我们的源代码检查这个文件夹,就像资源文件夹一样。
为什么不默认供应商?
Hugo决定默认不出现供应商文件夹提供了更好的效率。 如果两个项目使用相同的模块,Hugo只能下载一次,并在多个项目之间共享。 此外,将依赖项保持为隐藏可确保我们遵循不修改依赖项并通过官方手段 (更新依赖项版本) 进行更改的开发实践。 依赖项中的就地热补丁很有可能在提交到源代码控制时遗漏,从而导致构建失败。
CODE CHECKPOINT https://chapter-08-04.hugoinaction.com, and source code: https://github.com/hugoinaction/hugoinaction/tree/chapter-08-04.