我正在尝试使用 SVNKit 做一个简单的:svn diff url {date1}:{date2}
.
我不知道如何在 SVNKit 上使用它。有谁知道如何做到这一点?
问问题
1076 次
1 回答
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 设置器来发现更多设置。
于 2012-09-30T15:05:03.023 回答