Если вы просто хотите просмотреть SharpSvn, вы можете использовать http://docs.sharpsvn.net/. Документация там далека от завершения, поскольку основное внимание уделяется предоставлению функций. Любая помощь по улучшению документации (или самого SharpSvn) приветствуется; -)
Чтобы использовать сообщения журнала для вашего трекера, вы можете использовать два маршрута:
- Хук после фиксации, который обрабатывает изменения по одному
- Запланированная служба, которая время от времени вызывает 'svn log -r : HEAD'.
В последних ежедневных сборках SharpSvn есть некоторая поддержка хуков коммитов, но эта часть еще не является действительно стабильной.
Вы можете создать хук post commit (post-commit.exe) с помощью:
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)
{
//
}
}
}
(Для полного решения вам также необходимо подключить post-revprop-change, поскольку ваши пользователи могут изменить сообщение журнала после первого коммита)