使用SharpSVN获取提交后挂钩中特定修订号的日志详细信息?

rus*_*ier 5 c# svn hook sharpsvn

我正在尝试使用SharpSVN编写一个post-commit钩子但是无法弄清楚如何使用SharpSVN获取变更集信息给定版本号和repo的路径.任何想法都非常感谢.

Ber*_*ben 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)
    {
       //
    }
  }
}
Run Code Online (Sandbox Code Playgroud)