我正在尝试使用SharpSVN编写一个提交后挂钩但是无法弄清楚如何使用SharpSVN获取变更集信息给定版本号和回购路径。任何想法都非常感激。
答案 0 :(得分:4)
在钩子客户端中,您最有可能想要使用直接访问存储库的SvnLookClient。在这个例子中(从这里的另一个问题复制)我也使用SvnHookArguments类来解析钩子参数。
static void Main(string[] args)
{
SvnHookArguments ha;
if (!SvnHookArguments.ParseHookArguments(args, SvnHookType.PostCommit, false, out ha))
{
Console.Error.WriteLine("Invalid arguments");
Environment.Exit(1);
}
using (SvnLookClient cl = new SvnLookClient())
{
SvnChangeInfoEventArgs ci;
cl.GetChangeInfo(ha.LookOrigin, out ci);
// ci contains information on the commit e.g.
Console.WriteLine(ci.LogMessage); // Has log message
foreach(SvnChangeItem i in ci.ChangedPaths)
{
//
}
}
}
答案 1 :(得分:-2)
您需要GetLog方法。
SvnRevision rev(123);
client.GetLog(uri, new SvnLogArgs(rev), out logitems); // uri is your url to the repo.
这可能不准确(没有intellisense!我怎么期望编写C#而不用那个:(),但它大致是你想要的。