@Nls
  @NotNull
  public static String getPresentableText(@NotNull VcsFileRevision revision, boolean withMessage) {
    // implementation reflected by com.intellij.vcs.log.ui.frame.VcsLogGraphTable.getPresentableText()
    @Nls StringBuilder sb = new StringBuilder();
    long time = revision.getRevisionDate().getTime();
    sb.append(VcsBundle.message("file.history.details.hash.author.on.date.at.time",
                                VcsUtil.getShortRevisionString(revision.getRevisionNumber()),
                                revision.getAuthor(),
                                DateFormatUtil.formatDate(time),
                                DateFormatUtil.formatTime(time)));
    if (revision instanceof VcsFileRevisionEx) {
      if (!Objects.equals(revision.getAuthor(), ((VcsFileRevisionEx)revision).getCommitterName())) {
        sb.append(" (").append(VcsBundle.message("file.history.details.committer.info",
                                                 ((VcsFileRevisionEx)revision).getCommitterName())).append(")");
      }
    }
    if (withMessage) {
      sb.append(" ").append(MessageColumnInfo.getSubject(revision));
    }
    return sb.toString();
  }
@Nls
  @NotNull
  public static String getPresentableText(@NotNull VcsFileRevision revision, boolean withMessage)