在我的.gitolite.rc
文件中,我有:
LOCAL_CODE => "$ENV{HOME}/.gitolite/local"
..然后在我启用的同一文件的ENABLE
部分
repo-specific-hooks
:
ENABLE => [
# COMMANDS
# These are the commands enabled by default
'help',
'desc',
'info',
...,
...,
...,
'repo-specific-hooks'
...,
...,
...
]
,现在,在我的gitolite-admin
文件夹中的本地计算机上:
gitolite-admin
...
...
└──local/
└── hooks/
├── common/
└── repo-specific/
└── message* <-- this one I want to call in a post-receive hook!
,以及我gitolite-admin
配置文件中的一些回购:
repo foo
RW+ = @all
option hook.post-receive = message <-- referencing script I want to call on post-receive
我从commit
做了push
和gitolite-admin
,我可以看到我的message
脚本已部署在服务器路径上的那个位置($ ENV { HOME} /。gitolite / local),可执行的permsission set 。
然而,当我向repo foo
推送时,我不会收到来自我的回复消息
message
脚本,它只是一个bash脚本:
echo "hello from message"
exit 0
为什么post-receive
没有触发?
如果我理解得很好,那么foo repo
应该有一个符号链接
我的post-receive
脚本名为message
,而且没有。{/ p>
答案 0 :(得分:1)
正如OP所证实的那样,每个回购挂钩只能从gitolite 3.5(2013年10月),3.6(2014),而不是3.5.x(2013)早期获得。
'repo-specific-hooks
'是:
所以这里需要最新版本的gitolite。