我正在使用 svnkit 和 poi 为我的公司创建一个文档,这一切似乎进展顺利,直到我踩到文档的“创建日期”部分。我有一堆需要展示的属性,到目前为止我可以通过谷歌找到它。我已经读过,我实际上可以通过执行 SVNRepository.log 并查看第一个 SVNLogEntry.getDate 来检索任何文件的创建日期,但是我的大多数文档都围绕着最新的修订数据。Beeing 最后的评论,最后修改它的人等等,所以我试图用 SVNRepository.getLatestRevision 来填充它。所以如果没有其他可用的,我将不得不做一堆寻找每个文件的创建日期并寻找它对应的文件。我要问的是:
一些示例代码来显示我在做什么:
ArrayList<SVNFileRevision> resultReturn new ArrayList<SVNFileRevision>();
ArrayList entries = new ArrayList<SVNDirEntry>();
repository.getDir(path, repository.getLatestRevision(), true, entries);
Iterator iterator = entries.iterator();
while (iterator.hasNext()) {
SVNDirEntry entry = (SVNDirEntry) iterator.next();
if (entry.getKind() != SVNNodeKind.DIR) {
ArrayList<SVNFileRevision> aux = new ArrayList<SVNFileRevision>();
repository.getFileRevisions(path + (path.equals("") ? "" : "/") + entry.getName(), temp, 1,
repository.getLatestRevision());
for (SVNFileRevision rev : aux) {
//So we know that rev contains date author and log
//System.out.println(rev.getRevision());
//System.out.println(rev.getRevisionProperties().getSVNPropertyValue("svn:date"));
//System.out.println(rev.getRevisionProperties().getSVNPropertyValue("svn:author"));
//System.out.println(rev.getRevisionProperties().getSVNPropertyValue("svn:log"));
//we add path and name
rev.getRevisionProperties().put("path", path);
rev.getRevisionProperties().put("name", entry.getName());
//insert creation date
// ? ? ?
resultReturn.add(rev);
}
}
}
return resultReturn;
提前感谢您的帮助。