gpt4 book ai didi

git - 如何在 Gerrit 2.16 中配置服务器端 Hook

转载 作者:太空狗 更新时间:2023-10-29 14:35:49 27 4
gpt4 key购买 nike

我已经开始使用 Gerrit 2.16 作为代码审查工具,并希望配置服务器端 Hook 以在将更改提交/推送到 Gerrit 时验证 git 提交消息。

尝试通过将脚本复制到 $GIT_DIR/hooks(如 ref-update、patchset-created、change-merged 等脚本)来使用 hooks,在 gerrit 服务器上授予权限,但没有任何效果。

commit-msg 钩子(Hook)可以通过在 gerrit UI 中使用命令 give 在本地存储库上启用

例子:git clone ssh://@:29418/Project1 && scp -p -P 29418 @:hooks/commit-msg/.git/hooks/

如果启用此 Hook ,将自动生成 change_ID。

执行上述命令时,此脚本 commit-msg 会下载到本地存储库。
我的问题;我们可以在 gerrit 服务器上找到这个脚本的路径,以便我可以修改和执行 git 提交消息验证吗?

或者还有其他方法可以启用 gerrit 服务器端 Hook 吗?

最佳答案

不,您不会在 Gerrit 服务器上找到 commit-msg 路径,并且 Git/Gerrit 不会自动使用您放在 $GIT_DIR/hooks 上的任何 Hook 。如果你想拥有本地 Hook ,你需要手动将它们安装在 REPOSITORY/.git/hooks 本地目录中。

Gerrit 不会在它使用的存储库中运行任何标准的 git 钩子(Hook),但它确实有自己的钩子(Hook)机制,通过 Hooks plugin .参见 here有关受支持的 Gerrit Hook 的更多信息。 Hooks 插件是一个 core plugin (它打包在 Gerrit war 文件中,可以在 Gerrit 初始化期间轻松安装)。

我建议你看看 Git::Hooks (用于实现 Git/Gerrit Hook 的 Perl 框架)。我们在我们公司使用,它真的很棒。您可以使用它来实现您想要的以及更多...

关于git - 如何在 Gerrit 2.16 中配置服务器端 Hook ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48350468/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com