1
我有一個Maven Mojo插件,詢問SCM生成報告。它收集的意見,作者和日期項罰款。我現在需要實際的提交ID。因此,考慮到以下日誌語句...如何從Maven SCM抽象獲得Git更改集ID
commit 0559a4f75eaabb978cd880ae921ea7737b974580
Author: John Smith <[email protected]>
Date: Tue Jan 18 13:08:57 2011 -0500
Fixed port numbers for JMX
我想提取0559a4f75eaabb978cd880ae921ea7737b974580
似乎有不被執行此操作的明顯的方式。任何幫助,將不勝感激。以下是我首先獲取ChangeSet的方法。
SimpleDateFormat localFormat = new SimpleDateFormat(userDateFormat);
ScmRepository repository = getScmRepository();
ScmProvider provider = getScmManager().getProviderByRepository(repository);
ChangeLogScmResult result = provider.changeLog(repository, getFileSet(), this.parseDate(localFormat, this.startDate), this.parseDate(localFormat, this.endDate), 0, (ScmBranch) getScmVersion(scmVersionType, scmVersion), dateFormat);
checkResult(result);
ChangeLogSet changeLogSet = result.getChangeLog();
ChangeSet[] changeSets = (ChangeSet[]) changeLogSet.getChangeSets().toArray(new ChangeSet[changeLogSet.getChangeSets().size()]);
GitChangeSet changeSet = (GitChangeSet)changeSets[0];
String gitID = ???????????????????????????????
這裏的GitChangeSet http://maven.apache.org/scm/apidocs/org/apache/maven/scm/provider/git/GitChangeSet.html,從中可以得到大多數我做剩下的東西的API文檔。