我真的很困惑如何配置GitLab全局挂钩。有关how to set a global hook的文档很清楚。因此,我登录了我的GitLab实例,转到目录/opt/gitlab/embedded/service/gitlab-shell/hooks
,它具有3个文件:
-rwxr-xr-x 1 root root 131 Jun 10 16:22 post-receive
-rwxr-xr-x 1 root root 131 Jun 10 16:22 pre-receive
-rwxr-xr-x 1 root root 131 Jun 10 16:22 update
所有文件具有相同的内容:
# cat pre-receive
#!/bin/sh
echo "The gitlab-shell hooks have been migrated to Gitaly, see https://gitlab.com/gitlab-org/gitaly/issues/1226"
exit 1
由于它们都有一个exit 1
,因此显然这些钩子不再执行了。
linked issue确实令人困惑。这是实现名为Gitaly的东西的路线图,但我真的不知道如何使用它来实现全局Git挂钩。
有人可以在GitLab CE版中向我展示git全局钩子的逐步配置吗?
答案 0 :(得分:0)
您正在gitlab-shell
内搜索钩子,并且由于它们将许多东西从gitlab-shell
移到gitaly-ruby
。因此,这意味着钩子在gitaly的某个地方起作用。
现在尝试:
ls /opt/gitlab/embedded/service/gitaly-ruby/git-hooks
希望您在那里找不到任何exit nonzero
。休息是你的艺术。