2012-09-28 191 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

我曾經告訴過你,你是我的英雄!?非常感謝!! –