Как я могу просмотреть изменения, сделанные после внесения изменений, и проанализировать их для комментариев?
Вопрос
Я надеялся автоматизировать некоторые задачи, связанные с SubVersion, поэтому я получил SharpSvn. К сожалению, я не могу найти много документации для этого. Р>
Я хочу иметь возможность просматривать изменения после того, как пользователь фиксирует новую ревизию, чтобы я мог разобрать код для специальных комментариев, которые затем можно загрузить в мою систему заявок.
Решение
Если вы просто хотите просмотреть SharpSvn, вы можете использовать http://docs.sharpsvn.net/ . Документация там далека от завершения, так как основное внимание уделяется предоставлению функций. Любая помощь по улучшению документации (или самого SharpSvn) приветствуется; -)
Чтобы использовать сообщения журнала для вашего трекера, вы можете использовать два маршрута:
<Ол>В последних ежедневных сборках 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, поскольку ваши пользователи могут изменить сообщение журнала после первого коммита)
Другие советы
Это полезно?
http://blogs.open.collab.net /svn/2008/04/sharpsvn-brings.html р>
Интересно, а не могут ли хуки subversion (на сервере svn) быть здесь другим подходом? Я не пробовал, но CaptainHook предлагает svn - > интеграция с .NET-хуками.