private boolean addFileToIndex(PropertyFile pfile) throws IOException, NotFoundException {

		String parentPath = pfile.getParentPath();
		String name = pfile.getName();
		if (parentPath == null || name == null) {
			return false;
		}

		String conflictedItemStorageName = findItemStorageName(parentPath, name);

		String storageName = pfile.getStorageName();

		if (conflictedItemStorageName != null) {
			try {
				if (storageName.compareTo(conflictedItemStorageName) <= 0) {
					conflictedItemStorageName = storageName;
					return true; // skip conflict orphan
				}

				// remove conflict orphan from index and, add newer item below
				deallocateItemStorage(parentPath, name);
			}
			finally {
				Msg.warn(this, "Detected orphaned project file " + conflictedItemStorageName +
					": " + getPath(parentPath, name));
			}
		}

		indexJournal.open();
		try {
			Folder folder = addFolderToIndexIfMissing(parentPath);
			Item item = new Item(folder, name, pfile.getStorageName());
			bumpNextFileIndexID(item.getStorageName());
			indexJournal.addItem(item);
		}
		finally {
			indexJournal.close();
		}
		return true;
	}
Attempt to parse index version
@param firstIndexLine
@return index version or -1 if index version unknown
Ghidra/Framework/FileSystem/src/main/java/ghidra/framework/store/local/IndexedLocalFileSystem.java