Skip to content
Latchkey

Vendored Dependencies とは何か?

vendored dependencies とは、build 時にダウンロードするのではなく、プロジェクト自身のソースツリーに commit された外部ライブラリのコピーです。build はローカルのコピーに対してコンパイルするため、package registry にアクセスする必要がなくなります。vendoring は、より大きなリポジトリと引き換えに、build の分離性と再現性を得ます。

なぜ重要か

依存関係が vendored されていると、registry の障害、削除されたパッケージ、改変されたバージョンによって build が壊れることがなくなり、信頼性と再現性が向上します。コストはリポジトリの肥大化と手動の更新ワークフローです。CI runner では、vendoring がネットワーク依存と、それが build 時間にもたらすばらつきを取り除きます。

関連ガイド