共有プロジェクトは、すべてのタイプの開発プロジェクトに適しているわけではありません。共有プロジェクトに適した開発プロジェクトは、通常、このトピックに示すようなプロジェクトおよび開発環境の特性を持っています。
共有プロジェクトを使用するかどうかを決定する際には、以下の特性を考慮してください。
プロジェクトの特性
- 各ユーザーの担当領域ごとに別個のディレクトリーがある大規模プロジェクト
プロジェクトがこの構造に当てはまる場合は、共有開発のメリットが得られます。ただし、分離されないことに起因するリスクも軽減されます。
- プロダクトをビルドしないプロジェクト
プロダクトをビルドしないプロジェクトの例としては、ドキュメントまたは Web ページを管理するプロジェクトや、統合を管理するプロジェクトがあります。
プロダクトをビルドする必要がある場合、ビルド・プロセスをモジュラー化する必要があります。つまり、別個のディレクトリーを作成してある程度分離します。makefile を変更して、ビルドされる前にプロダクトが削除されるようにすることが必要な場合があります。そのようにしなければ、ファイルの権限により、あるユーザーが、別のユーザーの作成したファイルを更新できなくなる可能性があります。
- ローカル・マシン上にワークエリアを必要としないプロジェクト
すべてのユーザーが同じワークエリアにアクセスする必要があるため、プロジェクトは、ローカル・ハード・ディスクではなく、共有ドライブ上に置く必要があります。データから切断された状態でユーザーが作業する場合に、ローカル・マシンでの作業が必要になることがあります。例えば、家でファイルを操作する場合や、パフォーマンスを高めるためにファイルをローカル・ディスクに移動する場合などです。