了解Go 1.6 中的Vendor
在Go 1.6 中整合到了核心工作流程。當建置、執行或安裝使用外部相依性的專案時,Go 將優先考慮在 ./vendor 目錄中找到的套件。如果在那裡找不到包,它將回退到標準的 $GOPATH/src 目錄。
使用 Vendor
要使用供應商,只需複製必要的外部套件從 $GOPATH/src 目錄到專案根資料夾中的 ./vendor 目錄。例如:
mkdir -p $GOPATH/src/ou/vendor/github.com/zenazn/goji cp -r $GOPATH/src/github.com/zenazn/goji/ $GOPATH/src/ou/vendor/github.com/zenazn/goji
依賴管理工具
雖然可以手動將套件複製到 ./vendor 目錄,但使用依賴項會更方便管理工具。兩個流行的選項是:
這些工具會自動執行在內部尋找、複製和管理外部套件的過程./vendor 目錄。
選擇性供應
除了使用供應商進行完全依賴鎖定外,還可以選擇性地僅鎖定可能導致問題的特定包有更新。這允許您鎖定行為不當的軟體包的特定版本,同時確保其餘依賴項收到最新更新。
過度使用時
需要注意的是過度依賴依賴管理工具可能會導致不必要的鎖定。雖然鎖定依賴關係對於確保生產穩定性至關重要,但建議選擇性地使用供應商並考慮對消費者的影響。
例如,選擇性地僅供應有問題的包,同時繼續使用go get -u ./ ...對於其餘的依賴項,允許您維護最新版本和錯誤修復,同時仍然控制可能導致問題的特定依賴項。
以上是Go 1.6的Vendor機制如何管理外部依賴?的詳細內容。更多資訊請關注PHP中文網其他相關文章!