2012-09-28 143 views
1

我想用SVNKit做一个简单的:svn diff url {date1}:{date2}
我想不出如何在SVNKit上使用它。有谁知道如何做到这一点?SVNKit日期差异

回答

3

SVNKit的SVNRevision类有一个静态方法,它从java.util.Date实例构造它,这是SVN的{date}类比。

要运行比较

1。准备负责格式化补丁的差异生成器(支持SVN格式,Git格式和GNU格式(使用SvnNewGenerator包装器))。最有趣的设置是基路径---所有路径都是相对的,因为它是可能的(颠覆总是使用当前路径---新文件(“”)---但你可以使用任何其他)。

final SvnDiffGenerator diffGenerator = new SvnDiffGenerator(); 
diffGenerator.setBasePath(new File("")); 

2。准备产生的补丁输出流

final OutputStream byteArrayOutputStream = new ByteArrayOutputStream(); 

3。运行差异

final SvnDiff diff = svnOperationFactory.createDiff(); 
diff.setSource(SvnTarget.fromURL(url), SVNRevision.create(date1), SVNRevision.create(date2)); 
diff.setDiffGenerator(diffGenerator); 
diff.setOutput(byteArrayOutputStream); 
diff.run(); 

您可以通过将svndiff和SvnDiffGenerator制定者玩发现更多的设置。

+1

我曾经告诉过你,你是我的英雄!?非常感谢!! –