Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git Gerrit hooks重定向_Git_Redirect_Hook_Gerrit - Fatal编程技术网

Git Gerrit hooks重定向

Git Gerrit hooks重定向,git,redirect,hook,gerrit,Git,Redirect,Hook,Gerrit,你用钩子钩住gerrit了吗?我需要一个来扫描补丁集 我试图在GIT\u DIR/hooks/下创建更新钩子,但gerrit在合并时会绕过该钩子,而在直接推到GIT时它会起作用。 然后我试着用+x权限创建gerrit\u站点/hooks/patchset\u。我可以看到类似“echo$GIT\u DIR”的错误日志,但消息无法重定向到ssh终端之类的用户界面。此外,退出0和1不会阻止推送 gerrit钩子是否可能充当git钩子,它可以将消息重定向到用户并阻止某些补丁集 gerrit钩子是否可能充

你用钩子钩住gerrit了吗?我需要一个来扫描补丁集

我试图在
GIT\u DIR/hooks/
下创建更新钩子,但gerrit在合并时会绕过该钩子,而在直接推到GIT时它会起作用。 然后我试着用+x权限创建
gerrit\u站点/hooks/patchset\u。我可以看到类似“
echo$GIT\u DIR
”的错误日志,但消息无法重定向到ssh终端之类的用户界面。此外,退出0和1不会阻止推送

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

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

否。Gerrit挂钩无法阻止操作,也无法将输出重定向回用户。它们运行post-action,因此在调用钩子时操作已经完成。见官方文件,网址为

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


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

它似乎没有文档记录,我自己也没有测试过,但是ref update(没有ref updated)钩子似乎做了你应该做的事情:

是的,我搜索并最终使用ssh设置review-2。但我认为这可能有一个问题,如果我的review-2被管理员这样的人删除,那么我不喜欢的补丁集就会合并进来。删除分数的唯一方法是管理员进入并手动更改数据库。这将是一个相当大的麻烦,所以我不认为这是一个大问题。还有,我不明白为什么管理员会做这样的事?