I am trying to restrict the binary file (EXE, DLL, PDF) committing in our gitlab. So I need to add the hook to restrict it in globally. How can I do this? Is Pre-receive hook is suitable for this?
Is this place is correct to add the hook?
/opt/gitlab/embedded/service/gitlab-shell/hooks/pre-receive
Any helps appreciated!
As I commented, for per-project, use custom hooks: (Chained hooks support)
See the exact steps at "How can I add hooks to gitlab?", and involve the create of a dedicate
repo.git/custom_hooks
subfolder.But that is per-repository, not for all repos.
You would need to add that script for each repo of a group.
The
pre-receive
script you would see in the normalrepo.git/hooks
folder is actually a symlink to thegitlab-shell hook
folder, and it is taken by GitLab to manage the access permission.