Java SVNKit用于查找存储在不同位置且版本号不同的两个文件之间的差异
我正在使用SVNKit API编写一个Java程序,我需要在API中使用正确的类或调用,以便找到存储在不同位置的文件之间的差异 第一个文件: 第二个文件: 我使用了列出的API调用来生成diff输出,但到目前为止还没有成功Java SVNKit用于查找存储在不同位置且版本号不同的两个文件之间的差异,java,svn,diff,svnkit,Java,Svn,Diff,Svnkit,我正在使用SVNKit API编写一个Java程序,我需要在API中使用正确的类或调用,以便找到存储在不同位置的文件之间的差异 第一个文件: 第二个文件: 我使用了列出的API调用来生成diff输出,但到目前为止还没有成功 DefaultSVNDiffGenerator diffGenerator = new DefaultSVNDiffGenerator(); diffGenerator.displayFileDiff("", file1, file2, "10983", "8971",
DefaultSVNDiffGenerator diffGenerator = new DefaultSVNDiffGenerator();
diffGenerator.displayFileDiff("", file1, file2, "10983", "8971", "text", "text/plain", output);
diffClient.doDiff(svnUrl1, SVNRevision.create(10868), svnUrl2, SVNRevision.create(8971), SVNDepth.IMMEDIATES, false, System.out);
有人能提供正确方法的指导吗?您的代码看起来是正确的。但更喜欢使用新的API:
final SvnOperationFactory svnOperationFactory = new SvnOperationFactory();
try {
final ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
final SvnDiffGenerator diffGenerator = new SvnDiffGenerator();
diffGenerator.setBasePath(new File(""));
final SvnDiff diff = svnOperationFactory.createDiff();
diff.setSources(SvnTarget.fromURL(url1, svnRevision1), SvnTarget.fromURL(url2, svnRevision1));
diff.setDiffGenerator(diffGenerator);
diff.setOutput(byteArrayOutputStream);
diff.run();
} finally {
svnOperationFactory.dispose();
}
SVNKit有一些测试,您可以将它们用作示例。我从DiffTest复制粘贴了上面的代码(并删除了与测试相关的代码)。