在git push上显示ISubscriber TFS插件消息

时间:2014-11-06 13:36:01

标签: git tfs tfs2013

我们正在使用带有git源代码控制的TFS 2013。我想强制执行一些规则,对于初学者签入/提交消息格式。 TFS不支持git服务器挂钩,所以我必须通过实现ISubscriber接口来编写插件。

插件部分工作 - 在git push上拒绝git提交与不匹配正则规则的消息。问题是 - 不显示插件的自定义状态消息。只有通用消息:

! [remote rejected] master -> master (The reference was rejected by a plugin.)
error: failed to push some refs to 'http://repo_server

是否可以在GIT推送时显示来自TFS插件的自定义消息?如果是的话,我做错了什么?

插件主要是从here

复制的

提交邮件验证的代码段:

var regex = new Regex(@"regex");

foreach (var item in pushNotification.IncludedCommits)
{
   var gitCommit = (TfsGitCommit)repository.LookupObject(requestContext, item);
   string comment = gitCommit.GetComment(requestContext);
   if (!regex.IsMatch(comment))
   {
       statusCode = 1;
       statusMessage = "Wrong commit message format. Proper message: sample_message";
       return EventNotificationStatus.ActionDenied;
   }
}

1 个答案:

答案 0 :(得分:1)

目前似乎无法实现:msdn forums

TFS目前不支持修改返回给git客户端的消息。