Git

GitLab CE 送出後自定義掛鉤不起作用

  • December 17, 2015

我使用 GitLab 社區版 8.2 並想添加送出後掛鉤。

我創建了具有權限的文件 path_to_project.git/custom_hooks/post-commit

$ ls -l1 custom_hooks/post-commit
-rwxr-xr-x 1 git git 45 Dec 14 21:31 custom_hooks/post-commit

和內容

#!/bin/bash
echo "test custom" > /tmp/hook

如此處所述:http: //doc.gitlab.com/ce/hooks/custom_hooks.html

但它不起作用(通過 Web 界面送出檢查)。我也嘗試了“正常”的 git hook 放置(project.git/hooks/post-commit),但它也不起作用。

post-commit是一個客戶端鉤子,你不能在伺服器上實現它。

根據 Gitlab 文件:http ://doc.gitlab.com/ce/hooks/custom_hooks.html ,您可以在伺服器上實現伺服器端自定義掛鉤(pre-receive, post-receive, and update)。

伺服器端 git 掛鉤的範例包括 pre-receive、post-receive 和 update。有關每種掛鉤類型的更多資訊,請參閱Git SCM 伺服器端掛鉤

如果要自定義客戶端掛鉤,則需要更改原始掛鉤程式碼或將自定義腳本放在客戶端的.git/hooks. 在這裡閱讀更多:什麼是 Git 鉤子?

這裡是關於自定義鉤子的全部內容:自定義 Git - Git Hooks

引用自:https://serverfault.com/questions/742869