void (@NotNull MultiMap<VirtualFile, TextFilePatchInProgress> patchGroups, @NotNull VirtualFileWrapper targetFile) { VirtualFile newPatchBase = notNull(myNewPatchBase, myProject.getBaseDir()); try { List<FilePatch> textPatches = toOnePatchGroup(patchGroups, newPatchBase); PatchWriter.writePatches(myProject, targetFile.getFile().toPath(), newPatchBase.toNioPath(), textPatches, new CommitContext()); } catch (IOException e) { LOG.info(e); WaitForProgressToShow.runOrInvokeLaterAboveProgress(() -> { Messages.showErrorDialog(myProject, message("create.patch.error.title", e.getMessage()), getErrorTitle()); }, null, myProject); } }