首页 >后端开发 >Golang >我应该将GO项目的供应商目录提交版本控制吗?

我应该将GO项目的供应商目录提交版本控制吗?

Patricia Arquette
Patricia Arquette原创
2024-12-11 15:51:13566浏览

Should I Commit My Go Project's Vendor Directory to Version Control?

Go开发中vendor目录的版本控制

使用dep工具管理Go依赖时,开发者面临是否提交的决定将供应商目录放入版本控制中或在签出存储库后执行 dep Ensure。

为了提供有关此事的指导,dep工具的常见问题解答明确解决了以下问题:

我应该提交我的供应商目录吗?

常见问题解答承认该决定最终取决于开发人员,但它概述了每种方法的优点和缺点:

承诺供应商目录:

  • 优点:

    • 通过防止上游更改和历史重写来确保真正可重现的构建。
    • 在大多数操作(包括 go get)之后不再需要 dep 确保,克隆和合并。
  • 缺点:

    • 增加存储库大小,这可能会变得很重要。
    • 当修改 Gopkg.lock 时,将供应商目录更改添加到 PR diff,尽管供应商文件是GitHub 上默认隐藏。

检查后执行 dep Ensure出处:

  • 优点:

    • 维护较小的存储库大小。
    • 自动更新供应商存储库签出,确保一致性。
  • 缺点:

    • 签出存储库后需要额外的构建步骤。
    • 可能会导致供应商目录发生变化,而这些变化在

最终,最佳实践取决于特定的项目要求。优先考虑可重复性并避免不必要的构建步骤的开发人员可能会选择提交供应商目录。然而,那些关心存储库大小并喜欢自动依赖同步同步的人可能更喜欢在签出后执行 dep Ensure。

以上是我应该将GO项目的供应商目录提交版本控制吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn