public static void markConflictResolved(@NotNull Project project,
                                          @NotNull VirtualFile root,
                                          @NotNull Collection<? extends GitConflict> conflicts,
                                          @Nullable GitConflict.ConflictSide side) throws VcsException {
    List<FilePath> toAdd = new ArrayList<>();
    List<FilePath> toDelete = new ArrayList<>();

    for (GitConflict conflict : conflicts) {
      FilePath filePath = conflict.getFilePath();

      if (side == null || conflict.getStatus(side) != GitConflict.Status.DELETED) {
        toAdd.add(filePath);
      }
      else {
        toDelete.add(filePath);
      }
    }

    String[] parameters = GitVersionSpecialty.ADD_REJECTS_SPARSE_FILES_FOR_CONFLICTS.existsIn(project)
                          ? new String[]{"--sparse"} : ArrayUtil.EMPTY_STRING_ARRAY;
    GitFileUtils.addPaths(project, root, toAdd, true, false, parameters);
    GitFileUtils.deletePaths(project, root, toDelete, parameters);
  }
public static void markConflictResolved(@NotNull Project project,
                                          @NotNull VirtualFile root,
                                          @NotNull Collection<? extends GitConflict> conflicts,
                                          @Nullable GitConflict.ConflictSide side)