2016-01-16 3 views
1

Я пытаюсь добавить пост-получить крюк для конкретных хранилищ, использующих этот документ: http://gitolite.com/gitolite/cookbook.htmlgitolite добавить репо конкретный пост-получить крюк

В моей gitolite-админ репо я добавил local/hooks/repo-specific/deploy (который, как сейчас просто TRYS к коснитесь файла) и добавьте строку option hook.post-receive = deploy в conf/gitolite.conf.

На моем сервере я искал .gitolite.rc, который изначально не содержал блок % RC. Так что я попытался просто добавьте к нему:

%RC = (
    ENABLE => ['repo-specific-hooks'], 
    LOCAL_CODE => "$rc{GL_ADMIN_BASE}/local" 
); 

После нажатия изменения в репозиторий с крюком я получаю эту ошибку:

remote:     ***** ABORTING ***** 
remote:   can't make head or tail of 'option hook.post-receive = deploy' 

Это первый раз я использую gitolite, так Я вполне мог бы пропустить что-то очевидное. У кого-нибудь есть идеи?

ответ

1

Вы используете Gitolite v2.x. Специальные привязки репо поддерживаются только с V3.6.

Вы используете Debian? Затем вы, вероятно, установили пакет gitolite с apt. Это не то, что вы хотите. Версия 3 (по крайней мере для Debian, Ubuntu и т. П.) Установлена ​​с пакетом gitolite3.

Это связано с тем, что V3 не является строго совместимым с V2. Если вам нужно обновить Gitolite, есть учебник по адресу http://gitolite.com/gitolite/migr.html.

+0

Я в восторге от ваших детективных навыков: D – dave

+0

@dave Не было так сложно. Я скопировал исходный код Gitolite для этого сообщения об ошибке и выяснил, что он был только в V2.x. Для части Debian, ну ... Честно говоря, я сделал ту же ошибку несколько недель назад тоже ;-) –

1

RC раздел src/lib/Gitolite/Rc.pm#L501 на самом деле является содержанием .gitolite.rc.

Значение не должно содержать раздел %RC, но непосредственно эти записи.

As documented:

You can always get a default copy for your current version by running gitolite print-default-rc .

Смежные вопросы