在github上提交消息钩子

时间:2015-01-11 22:54:11

标签: github jira githooks

我正在尝试在github中设置一个pre-receive hook,我以前在STASH上使用它。在STASH中,我有一个预接收挂钩,用于强制执行“应该包含JIRA编号的自定义提交消息”。

现在,我试图了解在github上做类似事情的最佳方法。如果我将其拆分,那将是:

  • 需要自定义提交消息。
  • 每次提交都应包含现有的JIRA。
  • 也可以在任何拉取请求中执行此操作。

例如:TEST-1添加第一个提交消息。

这里有人可以帮助我,怎么办?

1 个答案:

答案 0 :(得分:2)

仅限GitHub offers webhooks,它允许您收听certain events并对其做出反应,包括推送。

但是这只会让你对推送作出反应(就像收到后挂钩一样),而不是阻止它。

您可以为该推送事件构建一个侦听器:

  • 检查刚刚推送的最新提交
  • 如果提交未遵循预期政策(HEAD~1),则
  • 重置为push --force

但对于最初推送该提交的用户来说,这对于从GitHub仓库中消失的所谓提交来说会很棘手。


更好的解决方案是在服务器中设置一个裸存储库,您可以在其中设置预接收挂钩:如果该提交通过,则后接收挂钩会将其推送到预期的GitHub存储库。

但是根据您的团队,可能很难设置每个人都可以访问的回购。

相关问题