首頁 > 後端開發 > Golang > 提交還是不提交 Go 供應商目錄:可重複建置與儲存庫大小?

提交還是不提交 Go 供應商目錄:可重複建置與儲存庫大小?

Susan Sarandon
發布: 2024-12-14 07:29:11
原創
142 人瀏覽過

To Commit or Not to Commit the Go Vendor Directory:  Reproducible Builds vs. Repository Size?

Go 依賴管理的 Vendoring 實踐

在 Go 開發中,管理依賴至關重要。使用 dep 工具,就會出現將供應商目錄提交到版本控制是否是最佳實踐的問題。

提交供應商目錄

官方dep FAQ 解決了這個問題問題:

優點:

  • 優點:
可重現的建置:無論上游變更如何,例如重命名、刪除或歷史覆蓋,都確保建置一致。

減少依賴管理:無需在複製、合併和其他儲存庫操作後執行 dep Ensure。
  • 缺點:
儲存庫大小較大:供應商目錄可能會大幅增加儲存庫的大小。

差異衝突:修改 Gopkg.lock 會導致供應商目錄發生更改,這可能會觸發拉取請求中的差異衝突。

替代方案:手動執行 dep Ensure
  • 或者,最佳實務建議在儲存庫簽出後手動執行 dep Ensure。這種方法具有以下優點:
較小的儲存庫大小:供應商目錄未提交,減少了儲存庫的整體佔用空間。

更清晰的差異:PR 差異僅包含對依賴項的更改Gopkg.lock 中的定義,避免來自供應商的噪音

結論是否提交vendor目錄的決定取決於特定的專案需求。對於可重複的建置和簡化的依賴關係管理,提交供應商目錄是有利的。但是,如果儲存庫大小和乾淨的差異具有更高的優先級,則在簽出後手動執行 dep Ensure 可能是更合適的選擇。

以上是提交還是不提交 Go 供應商目錄:可重複建置與儲存庫大小?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板