If you just want to browse SharpSvn you can use http://docs.sharpsvn.net/. The documentation there is far from complete as the focus is primarily on providing features. Any help on enhancing the documentation (or SharpSvn itself) is welcome ;-)
To use log messages for your issue tracker you can use two routes:
- A post-commit hook that processes changes one at a time
- A scheduled service that calls 'svn log -r <last-retrieved>:HEAD' every once in a while.
The last daily builds of SharpSvn have some support for commit hooks, but that part is not really api-stable yet.
You could create a post commit hook (post-commit.exe) with:
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)
{
//
}
}
}
(For a complete solution you would also have to hook the post-revprop-change, as your users might change the log message after the first commit)