void (@NotNull Project project, @NotNull Collection<? extends Change> changes, @NotNull List<? super BeforeAfter<AirContentRevision>> result, boolean honorExcludedFromCommit) { Collection<Change> otherChanges = PartialChangesUtil.processPartialChanges(project, changes, false, (partialChanges, tracker) -> { if (!tracker.hasPartialChangesToCommit()) return false; if (!tracker.isOperational()) { LOG.warn("Skipping non-operational tracker: " + tracker); return false; } List<String> changelistIds = ContainerUtil.map(partialChanges, ChangeListChange::getChangeListId); Change change = partialChanges.get(0).getChange(); PartialCommitHelper helper = tracker.handlePartialCommit(Side.LEFT, changelistIds, honorExcludedFromCommit); String actualText = helper.getContent(); result.add(new BeforeAfter<>(convertRevision(change.getBeforeRevision(), null), convertRevision(change.getAfterRevision(), actualText))); return true; }); for (Change change : otherChanges) { result.add(new BeforeAfter<>(convertRevision(change.getBeforeRevision(), null), convertRevision(change.getAfterRevision(), null))); } }