private void addUpdatedFiles(VirtualFile repo, UpdatedFiles updatedFiles, HgRevisionNumber parentBeforeUpdate, HgRevisionNumber parentAfterUpdate) {
    if (parentAfterUpdate == null || parentBeforeUpdate == null) {
      return;
    }
    if (parentAfterUpdate.equals(parentBeforeUpdate)) { // nothing to update => returning not to capture local uncommitted changes
      return;
    }
    HgStatusCommand statusCommand = new HgStatusCommand.Builder(true).ignored(false).unknown(false).baseRevision(parentBeforeUpdate).targetRevision(
      parentAfterUpdate).build(project);
    Set<HgChange> changes = statusCommand.executeInCurrentThread(repo);
    for (HgChange change : changes) {
      HgFileStatusEnum status = change.getStatus();
      switch (status) {
        case ADDED -> addToGroup(updatedFiles, change, FileGroup.CREATED_ID);
        case MODIFIED -> addToGroup(updatedFiles, change, FileGroup.UPDATED_ID);
        case DELETED -> addToGroup(updatedFiles, change, FileGroup.REMOVED_FROM_REPOSITORY_ID);
        case COPY -> addToGroup(updatedFiles, change, FileGroup.CHANGED_ON_SERVER_ID);
        default -> {
          //do nothing
        }
      }
    }
  }
private void addUpdatedFiles(VirtualFile repo, UpdatedFiles updatedFiles, HgRevisionNumber parentBeforeUpdate, HgRevisionNumber parentAfterUpdate)