public @Nullable HgCommandResult execute(@NotNull VirtualFile repo, @NotNull Collection<String> files, @Nullable HgRevisionNumber vcsRevisionNumber, boolean backupFile) {
    final List<String> options = new LinkedList<>();
    if (vcsRevisionNumber != null && !HgRevisionNumber.NULL_REVISION_NUMBER.equals(vcsRevisionNumber)) {
      options.add("--rev");
      if (!StringUtil.isEmptyOrSpaces(vcsRevisionNumber.getChangeset())) {
        options.add(vcsRevisionNumber.getChangeset());
      }
      else {
        options.add(vcsRevisionNumber.getRevision());
      }
    }
    if (!backupFile) {
      options.add("--no-backup");
    }
    options.addAll(files);
    return new HgCommandExecutor(project).executeInCurrentThread(repo, "revert", options);
  }
public @Nullable HgCommandResult execute(@NotNull VirtualFile repo, @NotNull Collection<String> files, @Nullable HgRevisionNumber vcsRevisionNumber, boolean backupFile)