0

您是否使用任何用于 gerrit 的钩子?我需要一个来扫描补丁集。

我试图在 下创建更新钩子GIT_DIR/hooks/,但是 gerrit 会在合并时绕过该钩子,而在直接推送到 git 时它可以工作。然后我尝试gerrit_site/hooks/patchset_created使用+x权限创建。我可以看到类似“ echo $GIT_DIR”的 error_log,但消息无法重定向到 ssh 终端等用户界面。退出 0 和 1 也不会阻止推送。

gerrit 钩子是否有可能充当 git 之一,可以将消息重定向到用户并阻止某些补丁集?

4

2 回答 2

1

gerrit 钩子是否有可能充当 git 之一,可以将消息重定向到用户并阻止某些补丁集?

不,Gerrit 钩子不能阻止操作,也不能将输出重定向回用户。它们运行后动作,因此在调用钩子时动作已经完成。请参阅http://gerrit-documentation.googlecode.com/svn/Documentation/2.4.2/config-hooks.html上的官方文档

目前正在添加预提交钩子,并将在 Gerrit 的未来版本中可用,可能作为插件。

当前最好的选择是创建一个 Gerrit 挂钩,它会像您描述的那样扫描补丁集,然后使用 ssh 接口对 Gerrit 中的更改进行评论。在 $dayjob,我们使用这样的钩子自动给带有不符合我们标准的提交消息的补丁提供 -2 审查分数。

于 2012-09-07T14:50:25.897 回答
0

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

于 2013-02-04T18:50:08.160 回答