如何查看提交修订后所做的更改并将其解析以进行注释?
我希望自动执行与SubVersion相关的一些任务,所以我得到了SharpSvn。 不幸的是我找不到很多文档。
我希望能够在用户提交新版本后查看更改,以便我可以解析代码以获取特殊注释,然后将其上载到我的票证系统中。
如果您只想浏览SharpSvn,可以使用http://docs.sharpsvn.net/ 。 那里的文档远未完成,因为重点主要是提供function。 欢迎任何有关增强文档(或SharpSvn本身)的帮助;-)
要为问题跟踪器使用日志消息,您可以使用两个路由:
- 提交后挂钩,一次处理一个更改
- 每隔一段时间调用’svn log -r
:HEAD’的计划服务。
SharpSvn的最后每日版本对提交钩子有一些支持,但那部分还不是真正的api-stable。
您可以创建一个post commit hook(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 eg Console.WriteLine(ci.LogMessage); // Has log message foreach(SvnChangeItem i in ci.ChangedPaths) { // } } }
(对于完整的解决方案,您还必须挂钩post-revprop-change,因为您的用户可能会在第一次提交后更改日志消息)
我想知道subversion钩子(在svn服务器上)是否可能不是另一种方法? 我没有尝试过,但是CaptainHook似乎提供了svn – > .NET钩子集成。
- Json.NET如何在反序列化期间执行dependency injection?
- iTextSharp v5 GetTextFromPage()抛出IndexOutOfRangeException
- ASP.Net MVC:如何使用递归技术显示嵌套的父子关系
- .Skip()。entity framework上的Take()导航属性正在我的SQL Server上执行SELECT *
- c#将对象添加到列表框并在其中显示对象的字符串
- 在多个文件中使用指令重复
- 将文件上载到Amazon S3中的存储桶失败并显示“达到最大重试次数”
- ConfidentialClientApplication AcquireTokenSilentAsync始终失败
- 如何绑定到CaretIndex又名文本框的光标位置