ホームページ > バックエンド開発 > Golang > Go `vendor` ディレクトリをバージョン管理にコミットする必要がありますか?

Go `vendor` ディレクトリをバージョン管理にコミットする必要がありますか?

Patricia Arquette
リリース: 2024-12-14 09:13:10
オリジナル
505 人が閲覧しました

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

Go の依存関係の管理: ベンダー ディレクトリのコミット

dep ツールを使用して Go の依存関係を操作する場合、よくある質問が生じます: コミットする必要があります生成されたベンダー ディレクトリをバージョン管理に含めますか?それとも、リポジトリをチェックアウトした後は常に dep ensure を実行する必要がありますか?

ベンダー ディレクトリのコミット: 長所と短所

公式の dep FAQ によると、ベンダー ディレクトリのコミットには次の利点があります:

  • 再現性builds: ベンダー ディレクトリをコミットすると、依存関係の名前変更、削除、コミット履歴の変更から保護されるため、さまざまな環境でビルドを再現できるようになります。
  • より高速な依存関係管理: dep は、クローン作成、マージ、

ただし、ベンダー ディレクトリのコミットにはいくつかの欠点もあります。

  • リポジトリ サイズの増加: ベンダー ディレクトリリポジトリのサイズが大幅に増加する可能性があります。
  • PR diff混乱: Gopkg.lock ファイルを変更すると、ベンダー ディレクトリの変更がトリガーされ、PR の差分が乱雑になる可能性があります。

ベスト プラクティス

かどうかベンダー ディレクトリをコミットするかどうかは、特定の要件と設定によって異なります。再現性を優先し、依存関係管理のオーバーヘッドを最小限に抑える場合は、ベンダー ディレクトリをコミットすることが適切な選択となる可能性があります。ただし、リポジトリのサイズと差分の明確さが懸念される場合は、リポジトリをチェックアウトした後に常に dep ensure を実行することを検討してください。

以上がGo `vendor` ディレクトリをバージョン管理にコミットする必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート