2012-07-25 76 views
0

我試圖用SharpSvn來讀取文件的兩個版本的內容。當我運行下面的代碼fileVersions集合只包含了一個項目..SharpSvn GetFileVersions版本範圍,只返回一個文件版本

var svnClient = new SvnClient(); 
var revisionInfo = new SvnFileVersionsArgs 
    { 
     Start = 80092, 
     End = 80093 
    }; 

Collection<SvnFileVersionEventArgs> fileVersions; 
svnClient.GetFileVersions(
    new SvnUriTarget("https://DbDiff.svn.codeplex.com/svn/DbDiffCommon/DataAccess/SqlCommand11.xml"), 
    revisionInfo, 
    out fileVersions); 

但是我希望它包括兩個項目。使用TortoiseSVN我可以看到,在該文件中修改改變,所以我希望,當我使用Start = 80092得到這個版本..

TortoiseSVN Log Messages

使用Start = 80091並沒有幫助..

回答

1

問題不在您的代碼中,而是在codeplex使用的SvnBridge軟件中。 (他們將數據存儲在TFS中,並通過網橋提供訪問,而不是使用真正的Subversion後端)。

橋軟件沒有正確實現這個API。 (我幾年前在它上面添加了一個問題,但據我所知它從未被修復過)。

Subversion本身只對'svn blame'(/ praise/annotate)使用這個api,所以我認爲SvnBridge的開發者並不在意解決這個問題。

在AnkhSVN的我只是檢測接收一個文件,然後使用SvnClient.Write的情況下()來獲取文件慢的方式:(

+0

我也看到奇怪的事情像顯示日誌中的某個文件第一個條目爲_Modified_ - 文件的第一個條目不應該是_Added _ ..?這種行爲是否可以通過SvnBridge解釋? – 2012-07-30 18:56:42