私たちのプロジェクトには多くの外部DLLがありますが、すべてではありませんが、ほとんどがサードパーティのDLLです。
現在、これらのDLLはプロジェクトに含まれていません。それらはSVNに含まれており、ビルド出力ディレクトリへのパスが与えられています。したがって、プロジェクトをビルドした後、SVNのために必要なファイルはそこにありますが、プロジェクト自体にはそれらの知識がありません。
プロジェクトのルートの下に、DependanciesやThirdPartyなどの名前のフォルダーがあり、そこにすべてのDLLが含まれていて、ビルドイベントを出力ディレクトリにコピーするように設定する必要があると思います。それらはSVNにも存在しますが、ビルド出力ディレクトリではなく、プロジェクトと同じ構造になります。
プロジェクト自体は、CommunicationProc.DLLと呼ばれるこれらのDLLの1つのみを参照します。次に、CommunicationProc.DLLは他のすべてのDLLを参照します。さまざまなタイプの無線をサポートするために、多数のDLLがあります。したがって、すべてのDLLが使用されるわけではありませんが、無線の種類に応じていずれかのDLLが使用される場合があります。
DLLをプロジェクトに含めるかどうかについては、社内で意見が異なります。一部のチームは、DLLはSVNにのみ含まれ、プロジェクト自体の一部ではないと考えています。
これは.NETDLLではなく、ほとんどが古いCDLLであることに注意してください。
受け入れられている慣行は何ですか?誰かが、プロジェクトに含めるか、SVNだけに含めるかについて、何らかの説得力のある議論を私に提供できますか?