多くのリソースは、ユーザーが作成および編集したファイルに変換、コンパイル、コピー、またはその他の処理を行うことによって作成されます。 派生リソースとは、オリジナル・データではなく、ソース・ファイルから再作成できるリソースです。 一般に、派生ファイルはある種類の処理から除外されます。
例えば、派生リソースは通常、リポジトリーを乱雑にし、定期的に変更され、ソース・ファイルから再作成できるため、チーム・リポジトリーに保持されません。 チーム・プロバイダーが派生ファイルを判別することは現実的ではありません。 リソース API は、作成するリソースが派生リソースであることをプラグインが示すための共通メカニズムを提供します。
プラグインは、IResource.setDerived(boolean) を使用して、 リソースがその他のリソースから派生したことを示すことができます。 新たに作成されたリソースはデフォルトでは派生リソースにならないため、 リソースを派生リソースであると明示的にマークするためにこのメソッドを使用する必要があります。 一般的な使用法として、出力フォルダー (Java プロジェクトの "bin" フォルダーなど) がプラグインによって作成されたときに、 プロジェクトのサブフォルダーを派生リソースとしてマークすることが挙げられます。
その他のプラグイン (通常はチーム・プロバイダー) は、 IResource.isDerived を使用して、 特定のリソースがリポジトリーによって管理されるべきかどうかを判別できます。 プロジェクトまたはワークスペース・ルートを派生リソースとしてマークしようとする試みは無視されます。
注: 派生リソースの概念は、他の (チームではない) プラグインによって、リポジトリー管理に適さないリソースを指示するために提供されています。 データを管理するためにチーム・インプリメンテーションによって作成された特殊なファイルは、派生リソースとしてマークするべきではありません。 隠れたチーム関連インプリメンテーション・リソースのマーキングの技法については、チーム専用リソースを参照してください。