public static void writePatchToClipboard(@NotNull Project project,
                                           @NotNull Path baseDir,
                                           @NotNull Collection<? extends Change> changes,
                                           @Nullable String commitMessage,
                                           boolean reversePatch,
                                           boolean honorExcludedFromCommit,
                                           @NotNull PatchBuilder patchBuilder,
                                           @NotNull CommitContext commitContext) throws VcsException, IOException {
    List<FilePatch> patches = patchBuilder.buildPatches(baseDir, changes, reversePatch, honorExcludedFromCommit);
    PatchWriter.writeAsPatchToClipboard(project, patches, commitMessage, baseDir, commitContext);
    VcsNotifier.getInstance(project).notifySuccess(PATCH_COPIED_TO_CLIPBOARD, "",
                                                   VcsBundle.message("patch.copied.to.clipboard"));
  }
public static void writePatchToClipboard(@NotNull Project project,
                                           @NotNull Path baseDir,
                                           @NotNull Collection<? extends Change> changes,
                                           @Nullable String commitMessage,
                                           boolean reversePatch,
                                           boolean honorExcludedFromCommit,
                                           @NotNull PatchBuilder patchBuilder,
                                           @NotNull CommitContext commitContext)