This is probably not necessary given the use of FileTreeIterator to check for the existence of gitignore files. However are parsed only when they are needed, so there could be a large gap between node initialization and parsing where a .gitignore file could be deleted. This needs to be addressed either by parsing the nodes as they are initialized or by passing timestamps to determine when a re-parse is necessary.