我公司有一个私人 gitlab 存储库,并且我们在预接收时有一个代码验证脚本,以确保没有代码语法错误(php)被推送到存储库。
最近我们决定将 gitlab 版本更新到较新的版本,看起来钩子系统已经更改。现在预接收脚本包含以下内容:
gitlab-shell 钩子已迁移至 Gitaly
我尝试更新文件但没有成功,经过一番搜索后,我发现现在只有一个由系统执行的全局脚本(而不是特定于存储库的脚本),请在此处找到
/opt/gitlab/embedded/service/gitaly-ruby/git-hooks
它执行一个名为 gitaly-hooks 的二进制文件,我不知道它是如何工作的。我试图找到文档,但我无法理解它。
如何在 gitaly 中为特定存储库实现预接收挂钩?
答案1
我设法添加了钩子,但问题是我没有很好地理解文档。
我必须在 repo 文件夹下创建一个名为 custom_hooks 的文件夹,并在其中添加预接收钩子。现在一切都正常了。