in src/com/intellij/vssSupport/VssChangeProvider.java [119:153]
private void iterateOverDirtyDirectories( final VcsDirtyScope dirtyScope )
{
for( FilePath path : dirtyScope.getDirtyFiles() )
{
if (progress != null) {
progress.checkCanceled();
}
String fileName = path.getPath();
VirtualFile file = path.getVirtualFile();
// make sure that:
// - a file is a folder which exists physically
// - it is under out vcs
if( path.isDirectory() && (file != null) && VcsUtil.isFileForVcs( path, project, host ) )
{
if( host.isFileIgnored( file ))
filesIgnored.add( fileName );
else
{
String refName = discoverOldName( host, fileName );
if( !isFolderExists( refName ) )
filesNew.add( fileName );
else
// NB: Do not put to the "Changed" list those folders which are under
// the renamed one since we will have troubles in checking such
// folders in (it is useless, BTW).
// Simultaneously, this prevents valid processing of renamed folders
// that are under another renamed folders.
// Todo Inner rename.
if( !refName.equals( fileName ) && !isUnderRenamedFolder( fileName ) )
filesChanged.add( fileName );
}
}
}
}