BがAに依存する異なるチームによって開発された2つの社内プロジェクトAとBがあります。両方のプロジェクトのソースコードはgitに格納されているため、プロジェクトAをサブモジュールとしてプロジェクトBに含め、ビルドシステムを構成しました両方を正しい順序で構築します。別の解決策は、ArtifactoryやNexusなどのバイナリリポジトリマネージャーを介してAを使用することです。
ソースコードに依存するか、バイナリアーティファクトに依存するかの長所と短所について疑問に思います。どちらが他より優れているのですか?これまでのところ、次のような要素を考え出すことができましたが、他の意見を聞くのはとても楽しみです。
ソースコードに応じてより良いです
- バイナリレポジトリマネージャーがない場合
- 別のプロジェクトのプレリリースバージョンに依存する必要がある場合
- 別のプロジェクトにパッチを適用する必要がある場合
- IDEで依存関係のソースコードを簡単に参照できるため
バイナリに依存する方が良い
- ビルド時間を最小限にする
- 別のプロジェクトのビルド環境をセットアップする手間を避けるため