示例#1
0
 @Override
 @Nullable
 public VcsRevisionNumber parseRevisionNumber(@Nullable String revision, @Nullable FilePath path)
     throws VcsException {
   if (revision == null || revision.length() == 0) return null;
   if (revision.length() > 40) { // date & revision-id encoded string
     String dateString = revision.substring(0, revision.indexOf("["));
     String rev = revision.substring(revision.indexOf("[") + 1, 40);
     Date d = new Date(Date.parse(dateString));
     return new GitRevisionNumber(rev, d);
   }
   if (path != null) {
     try {
       VirtualFile root = GitUtil.getGitRoot(path);
       return GitRevisionNumber.resolve(myProject, root, revision);
     } catch (VcsException e) {
       log.info("Unexpected problem with resolving the git revision number: ", e);
       throw e;
     }
   }
   return new GitRevisionNumber(revision);
 }