void (@NotNull AnActionEvent event) { Project project = Objects.requireNonNull(event.getProject()); GitVcs vcs = GitVcs.getInstance(project); Set<VirtualFile> conflictedFiles = new TreeSet<>(Comparator.comparing(VirtualFile::getPresentableUrl)); for (Change change : ChangeListManager.getInstance(project).getAllChanges()) { if (change.getFileStatus() != FileStatus.MERGED_WITH_CONFLICTS) { continue; } ContentRevision before = change.getBeforeRevision(); ContentRevision after = change.getAfterRevision(); if (before != null) { VirtualFile file = before.getFile().getVirtualFile(); if (file != null) { conflictedFiles.add(file); } } if (after != null) { VirtualFile file = after.getFile().getVirtualFile(); if (file != null) { conflictedFiles.add(file); } } } AbstractVcsHelper.getInstance(project).showMergeDialog(new ArrayList<>(conflictedFiles), vcs.getMergeProvider()); }