Gerrit挂钩重定向

时间:2012-09-06 15:11:55

标签: git redirect hook gerrit

你是否使用任何钩子进行gerrit?我需要一个来扫描补丁集。

我尝试在GIT_DIR/hooks/下创建更新挂钩,但gerrit会在合并时绕过该挂钩,而在直接推送到git时它会起作用。 然后,我尝试使用 + x 权限创建gerrit_site/hooks/patchset_created。我可以看到error_log像'echo $GIT_DIR',但消息无法重定向到用户界面,如ssh terminal。退出0和1也不会阻止推送。

gerrit挂钩是否可以作为git one,可以将消息重定向到用户并阻止一些补丁集?

2 个答案:

答案 0 :(得分:1)

  

gerrit挂钩是否可以作为git one,可以将消息重定向到用户并阻止一些补丁集?

没有。 Gerrit挂钩无法阻止操作,也无法将输出重定向回用户。它们运行后动作,因此动作已经在挂钩被调用时完成。请参阅http://gerrit-documentation.googlecode.com/svn/Documentation/2.4.2/config-hooks.html

上的官方文档

目前正在处理添加预提交挂钩,并且将在Gerrit的未来版本中提供,可能作为插件。

最好的当前选项是创建一个Gerrit钩子,它像你描述的那样扫描补丁集,然后使用ssh接口评论Gerrit的变化。在$ dayjob,我们使用这样的钩子来自动给出-2评论分数,以及不符合我们标准的提交消息。

答案 1 :(得分:0)

它似乎没有文档,我自己还没有测试过,但ref-update(没有来自ref-updated的)钩子似乎做了你应得的事:https://gerrit-review.googlesource.com/#/c/31350/