in src/net/sourceforge/transparent/TransparentVcs.java [463:484]
private void addWithParents(VirtualFile file) throws VcsException {
final VcsDirtyScopeManager vcsDirtyScopeManager = VcsDirtyScopeManager.getInstance(myProject);
VirtualFile current = file;
final VirtualFile vcsRootFor = ProjectLevelVcsManager.getInstance(myProject).getVcsRootFor(file);
if (vcsRootFor == null) {
throw new VcsException("Can not find VCS root for " + file.getPath());
}
while (current != null) {
if (newFiles.contains(current)) return;
final Status status = getStatus(current);
if (Status.NOT_AN_ELEMENT.equals(status)) {
newFiles.add(current);
if (current.isDirectory()) {
vcsDirtyScopeManager.dirDirtyRecursively(current);
}
} else {
return;
}
if (current.equals(vcsRootFor)) return;
current = current.getParent();
}
}