Назад | Перейти на главную страницу

git http-backend показывает информацию при доступе через браузер

В настоящее время я размещаю собственные git-репозитории для своих частных проектов. Для этого я использую Apache и стандартный git http-backend.

Теперь доступ к репо можно получить по следующему URL-адресу:

http://vcs.myserver.lc/git/Repo.git

С помощью этого URL-адреса я могу отправлять, извлекать и клонировать в / из этого репо, используя . Однако открытие этого URL-адреса в браузере просто дает мне пустую страницу, и теперь я ищу способ избежать этого.

Вместо этого я бы хотел, чтобы Apache представил страницу с некоторой информацией, например:

Это не веб-страница, это git-репо. Вы можете клонировать это репо, используя git clone [URL] ...

Было бы хорошо, если бы [URL] будет заменен текущим URL-адресом (например, с использованием PHP), но простой HTML тоже подойдет.

Я знаю, что это возможно, так как делает то же самое со своими репозиториями.

Мне удалось сделать нечто подобное для vcs.myserver.lc-домен, указав DocumentRoot в файле VHost-config:

DocumentRoot /srv/http/vcs/

На этом пути я поставил простой index.html-файл с основными инструкциями.

Итак, есть ли у них какой-либо простой способ показать информационную сторону для браузеров, в то время как git-client все еще может работать с репо? Могу ли я перенаправить браузеры на конкретный информационный сайт?

Да, на самом деле это относительно просто. Вам нужно указать apache, чтобы он использовал git-http-backend только для вещей, которые интересуют git, то есть всего, что соответствует ^.*/(HEAD|info/refs|objects/info/.*|git-(upload|receive)-pack)$