@Override
  public @NotNull Collection<Change> compareWithWorkingDir(@NotNull VirtualFile fileOrDir,
                                                           @NotNull VcsRevisionNumber revNum) throws VcsException {
    final GitRepository repo = GitUtil.getRepositoryForFile(myProject, fileOrDir);
    FilePath filePath = VcsUtil.getFilePath(fileOrDir);

    final Collection<Change> changes = GitChangeUtils.getDiffWithWorkingDir(myProject, repo.getRoot(), revNum.asString(),
                                                                            Collections.singletonList(filePath), false);
    return changes.isEmpty() && !filePath.isDirectory()
           ? createChangesWithCurrentContentForFile(filePath, GitContentRevision.createRevision(filePath, revNum, myProject))
           : changes;
  }
@Override
  public @NotNull Collection<Change> compareWithWorkingDir(@NotNull VirtualFile fileOrDir,
                                                           @NotNull VcsRevisionNumber revNum)