我正在使用SharpSvn通过C#代码与我的svn存储库进行交互。我正在使用此代码来检索svn日志条目:
Collection<SvnLogEventArgs> logitems;
var uri = new Uri("http://myserver/svn/foo/bar.txt");
client.GetLog(uri, out logitems);
foreach (var logentry in logitems)
{
string author = logentry.Author;
string message = logentry.LogMessage;
DateTime checkindate = logentry.Time;
}
这很好用,但现在我想按修订日期限制返回的日志条目。这可以通过svn命令行完成,例如
svn log "http://myserver/svn/foo/bar.txt" --revision {2008-01-01}:{2008-12-31}
我似乎无法在SharpSvn中找到并行功能。有人能指出我正确的方向吗?
答案 0 :(得分:25)
你可以这样试试:
DateTime startDateTime = // ...;
DateTime endDateTime = // ...;
SvnRevisionRange range = new SvnRevisionRange(new SvnRevision(startDateTime), new SvnRevision(endDateTime));
client.GetLog(uri, new SvnLogArgs(range), out logitems);
答案 1 :(得分:4)
我认为您可以使用带有GetLog
参数的SharpSvn.SvnLogArgs
函数之一来执行此操作。
public bool GetLog(System.Uri target, SharpSvn.SvnLogArgs args,
out System.Collections.ObjectModel.Collection logItems)
该类的Start
/ End
SharpSvn.SvnRevision
个对象看起来,就像他们可以采用“时间”参数一样。
我只是做了一点,但那就是你可以开始寻找的地方。