首頁 > 後端開發 > Golang > 我應該將 Go `vendor` 目錄提交到版本控制嗎?

我應該將 Go `vendor` 目錄提交到版本控制嗎?

Patricia Arquette
發布: 2024-12-14 09:13:10
原創
506 人瀏覽過

Should I Commit the Go `vendor` Directory to Version Control?

管理Go 依賴項:提交供應商目錄

使用dep 工具處理Go 依賴項時,會出現一個常見問題:您是否應該提交將產生的供應商目錄納入版本控制?還是應該在簽出儲存庫後始終執行 dep Ensure?

提交供應商目錄:優點和缺點

根據官方de​​p FAQ,提交供應商目錄有以下優點:

  • 可重現建置:提交供應商目錄可確保跨不同環境的可重複構建,因為它可以防止依賴項重新命名、刪除和提交歷史記錄修改。
  • 更快的依賴項管理: 您可以跳過dep 確保在大多數 Git 操作(例如克隆、合併和獲取最新版本)之後將供應商目錄與 Gopkg.lock檔案同步的步驟

但是,提交供應商目錄也有一些缺點:

  • 增加儲存庫大小:供應商目錄會顯著增加儲存庫的大小。
  • PR diff 混淆: 修改Gopkg.lock 檔案將觸發供應商目錄中的更改,這可能會混亂 PR 差異。

最佳實務

是否提交供應商目錄取決於您的特定要求和偏好。如果您優先考慮可重複性並最小化依賴管理開銷,那麼提交供應商目錄可能是一個合適的選擇。但是,如果擔心儲存庫大小和差異清晰度,您可以考慮在簽出儲存庫後始終執行 dep Ensure。

以上是我應該將 Go `vendor` 目錄提交到版本控制嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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