我正在尝试创建一个脚本,以便在推送发生后将repo文件chmod到新组。为了测试钩子,我创建了一个钩子,它在/ tmp /中创建一个文件来检查钩子是否正常工作。但事实并非如此。
到目前为止我做了什么:
首先我创建了一个脚本(〜/ .gitolite / hooks / common / update.secondary),然后运行了gl-setup [pubkey]。经过多次尝试这样做后,我检查了主钩子目录(/ var / gitolite / hook / common /)并且脚本不存在。
之后我将脚本直接放在/ var / gitolite / hook / common /中,再次运行gl-setup,它仍然没有运行挂钩。
该脚本使用
作为gitolite用户执行正常sh ~/repositories/[some project]/hooks/myscript
我正在使用的脚本:
#!/bin/bash
touch /tmp/TESTFILE
权限更新脚本:
#!/bin/bash
chmod 750 -R /home/git/repositories/*
答案 0 :(得分:2)
/var/gitolite/hook/common/
工作并传播该脚本。
OP提到的第一个替代方案在Gitolite手册页“Using Hooks”中有所描述,但它取决于安装方法,它似乎是root one here。
话虽如此,关于chmod
操作,您需要考虑variable REPO_UMASK
in your gitolite.rc
,如下所述: