Git
GitLab CE 送出後自定義掛鉤不起作用
我使用 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