変更セットにある .txt ファイルを探しています。次に、このファイルのフル パス ディレクトリを自分の PC でローカルに作成する必要があります。
たとえば、「test.txt」という名前のファイルが次の場所にある場合: Project1-->Folder1-->Folder2-->test.txt
これまで、このファイルを検索することができました。ここで、ディレクトリ全体を取得し、PC 上で同様のディレクトリを作成する必要があります。 PC での結果: Folder1-->Folder2-->test.txt
それが、変更セット内のファイルを検索して取得するために行ったことです。
public IFileItem getTextFileFile(IChangeSet changeSet, ITeamRepository repository) throws TeamRepositoryException{
IVersionableManager vm = SCMPlatform.getWorkspaceManager(repository).versionableManager();
List changes = changeSet.changes();
IFileItem toReturn = null;
for(int i=0;i<changes.size();i++) {="" <br=""> Change change = (Change) changes.get(i);
IVersionableHandle after = change.afterState();
if( after != null && after instanceof IFileItemHandle) {
IFileItem fileItem = (IFileItem) vm.fetchCompleteState(after, null);
if(fileItem.getName().contains(".txt")) {
toReturn = fileItem;
break;
} else {
continue;
}
}
}
if(toReturn == null){
throw new TeamRepositoryException("Could not find the file");
}
return toReturn;
}
私は検索してフォーラムに投稿しましたが、見つけたもののほとんどは使用できるものです:configuration.determineAncestorsInHistory
ただし、IConfiguration を取得するには、私の場合は無効な workspaceConnection が必要です。
ありがとう。
私は RTC:4 Win:XP を使用しています
前もって感謝します。