public static void editFiles(@NotNull Project project, @NotNull List<? extends VirtualFile> files, List<? super VcsException> exceptions) {
    ChangesUtil.processVirtualFilesByVcs(project, files, (vcs, items) -> {
      EditFileProvider provider = vcs.getEditFileProvider();
      if (provider == null) {
        return;
      }

      try {
        provider.editFiles(VfsUtilCore.toVirtualFileArray(items));
      }
      catch (VcsException e1) {
        exceptions.add(e1);
      }

      VcsDirtyScopeManager vcsDirtyScopeManager = VcsDirtyScopeManager.getInstance(project);
      FileStatusManager fileStatusManager = FileStatusManager.getInstance(project);
      for (VirtualFile file : items) {
        vcsDirtyScopeManager.fileDirty(file);
        fileStatusManager.fileStatusChanged(file);
      }
    });
  }
public static void editFiles(@NotNull Project project, @NotNull List<? extends VirtualFile> files, List<? super VcsException> exceptions)