Статьи

Установка GitList для локальных репо

GitHub — отличное решение для совместной работы над кодом и управления репозиториями, но некоторые люди и компании не чувствуют себя в безопасности, размещая свой код в облаке, и вместо этого предпочитают поддерживать интрасеть. Сделать ваши репозитории доступными в локальной интрасети довольно легко, но иметь хороший интерфейс для взаимодействия с этими репозиториями, облегчая сотрудничество между командами, не так просто.

Git предоставляет веб-интерфейс для решения этой проблемы, gitweb, но это не элегантное и современное решение. Трудно понять, что изменилось, кто это сделал и когда это произошло. Кроме того, просмотр рабочего дерева является громоздким. Существуют и другие доступные решения, но некоторые из них слишком сложны для установки или, опять же, плохо подходят для глаз. Недавно я обнаружил GitList, бесплатное средство просмотра Git-репозитория с открытым исходным кодом . Его интерфейс во многом напоминает GitHub, но стремится сделать все простым и понятным.

В этой статье я расскажу вам, как настроить свой собственный просмотрщик репозитория Git. Не волнуйтесь, это не повредит, и это быстрее, чем установка WordPress!

Окружающая обстановка

В этом руководстве я предполагаю, что вы работаете с дистрибутивом Linux на основе Debian, но GitList будет работать с чем угодно. В основном вам нужно:

  • Apache с mod_rewrite или Nginx
  • Гит
  • PHP 5.3+

Если они не установлены, откройте терминал и запустите:

  sudo apt-get update
 sudo apt-get установить php5 apache2 git 

Я также сделаю следующие предположения относительно вашей среды:

  • Путь к вашим репозиториям Git: /home/bob/code
  • Путь к корню документа Apache: /var/www
  • Путь к исполняемому файлу Git: /usr/bin/git
  • Ваш корневой URL-адрес Apache: http://localhost

Пользователь Apache получит доступ к вашим репозиториям Git, поэтому вам необходимо применить соответствующие права доступа:

  sudo chmod -R 744 / home / bob / code 

Установка и настройка GitList

Сначала скачайте GitList . Вы можете выбрать либо последнюю стабильную версию, либо основную версию, но имейте в виду, что основная версия может содержать ошибки, так как разработчики активно работают над ней. После выбора пакета распакуйте его в корневой каталог документов Apache внутри папки с именем gitlist

Теперь для настройки GitList! Переименуйте файл config.ini-exampleconfig.ini

  [Мерзавец]
 client = '/ usr / bin / git';  Ваш путь к исполняемому файлу git
 репозитории = '/ home / bob / code /';  Путь к вашим репозиториям

 ;  Вы можете скрыть репозитории из GitList, просто скопируйте это для каждого репозитория, который вы хотите скрыть
 ;  скрытый [] = '/ home / bob / code / SecretProject'

 [приложение]
 baseurl = 'http: // localhost / gitlist';  Базовый URL приложения

 ;  Если вам нужно указать пользовательские типы файлов для определенных расширений, сделайте это здесь
 [типы файлов]
 ;  расширение = тип
 ;  dist = xml

Остался только один шаг: нам нужно создать папку внутри /var/www/gitlistcache Так:

  cd / var / www / gitlist
 кеш mkdir
 кеш chmod 777 

Теперь перейдите по http://localhost/gitlist

Помогите! Страница не найдена!

GitList использует Apache mod_rewrite для создания красивых URL. Поэтому, если страница не найдена, включите mod_rewrite в Apache:

  sudo a2enmod переписать 

Также убедитесь, что Apache может прочитать файл .htaccess Файл .htaccess Откройте файл конфигурации вашего веб-сайта Apache по умолчанию (обычно он находится в /etc/apache2/sites-enabled/000-default

 <Directory / var / www />
	 Опции Индексы FollowSymLinks MultiViews
	 AllowOverride Нет
	 Заказать разрешить, отказать
	 разрешить от всех
 </ Directory>

Измените параметр AllowOverrideNoneAll Сохраните изменения и перезапустите Apache.

  sudo /etc/init.d/apache2 restart 

Пользовательская настройка

Интерфейс GitList был создан с использованием Twitter Bootstrap и использует LESS . Файлы LESS доступны в web/less Предоставляется make-файл, поэтому все, что вам нужно сделать, это настроить файлы LESS на свой вкус, запустить makeweb Конечно, у вас должен быть установлен lesscnpm : npm install less

GitList работает на основе механизма шаблонов Twig , и все шаблоны доступны в views Чтобы понять, что происходит, я рекомендую вам прочитать этот урок . Не забудьте очистить содержимое папки cache.twig

Изображение через Fotolia