Как интегрировать CGit с Gerrit в качестве замены для Gitweb?
Я пытаюсь заставить cgit v0.11.0 работать с Gerrit v2.11 в качестве встроенного обозревателя хранилища.
Основываясь на документации Gerrit, я смог заставить Gitweb работать, просто указав следующие два параметра в gerrit.config:
[gitweb]
type = gitweb
cgi = /path/to/gitweb/gitweb.cgi
Тем не менее, инструкции для cgit немного расплывчаты в документации. Я попытался изменить настройки следующим образом:
[gitweb]
type = cgit
cgi = /path/to/cgit/cgit.cgi
С этими изменениями Геррит правильно отобразил ссылку "(cgit)" в пользовательском интерфейсе, но когда я нажимаю на ссылку, я получаю ошибку "Не найдено". Сгенерированный URL-адрес кажется неправильным (имя репозитория объединяется с URL-адресом без разделителя):
https://gerrit.myserver.org:8443/gitwebAll-Projects.git/summary
С помощью 'gitweb' в качестве поставщика, URL генерируются по-разному:
https://gerrit.myserver.org:8443/gitweb?p=All-Projects.git;a=summary
Я попытался запустить тот же URL с "cgit", что и поставщик, и теперь я не получаю ошибку "Not Found". Вместо этого появляется пустая страница, сгенерированная cgit, которая говорит:
No repository selected
generated by cgit v0.11.0 at 2015-04-22 03:04:49 (UTC)
Кто-нибудь успешно интегрировал cgit с Gerrit, используя встроенный gitweb.type = cgit? Если да, можете ли вы поделиться какой-либо конкретной конфигурацией gerrit / cgit, которую мне не хватает?
1 ответ
Если ваш cgit запущен с другого веб-сервера или ссылки, вам нужно только добавить правильный URL для него.
[gitweb]
type = cgit
url = https://gerritServer/cgit/
https://code-review.phablet.ubuntu.com/Documentation/config-gitweb.html