- PVSM.RU - https://www.pvsm.ru -
Привет!
Все программисты делятся на тех, кто использует систему контроля версий, и тех кто ещё ёё не использует. Одной из самых популярных на сегодняшний день, является git. И хотя его структура направлена на децентрализованное хранение данных, все мы пользуемся github, assembla, bitbucket или githost. Главный недостаток этих хостингов, в том, что это чужие проекты, которые в любой момент могут прикрыть ваш аккаунт или слить данные налево. И тут на сцене появляется GitBlit! Git сервер на Java, полностью контролируемый вами, с множеством плюшек и веб-интерфейсом. Сегодня будем запускать его на бесплатном
Узнав в начале лета про бесплатный
Описание возможностей честно содрано с сайта и переведено на наш великий и могучий.
Четыре типа конфигураций контроля доступа для каждого хранилища:
Основные плюшки:
Языки:
Есть желание перевести на Великий и Могучий?
Добро пожаловать на www.getlocalization.com/gitblit/ [3]
Скриншоты: gitblit.com/screenshots.html [4]
Демо сервер: demo-gitblit.rhcloud.com [5]
Регистрируемся на openshift [6]
Создаём JBoss Application Server https://openshift.redhat.com/app/console/application_types/jbossas-7 [7]
Дальше, следуя инструкциям, добавляем свой ssh-ключ и выполняем git clone.
У меня, например так:
git clone ssh://461e96291a2d2fb96b4423a0a329c7@habr-dark008.rhcloud.com/~/git/habr.git/
Переходим в папку приложения:
cd habr/
Очищаем папку от стандартной заглушки:
rm -R *
Скачиваем gitblit:
wget https://gitblit.googlecode.com/files/express-1.1.0.zip
Разархивируем в папку habr и удаляем архив:
unzip express-1.1.0.zip && rm express-1.1.0.zip
Настраиваем конфиг по адресу: habr/deployments/ROOT.war/WEB-INF/web.xml
Устанавливаем значения true:
web.enableRpcManagement
web.enableRpcAdministration
А у web.forwardSlashCharacter на !
Как здравомыслящие параноики перенаправляем весь трафик через https.
Создаём файл jboss-web.xml в этой же папке (WEB-INF) со следующим содержанием:
<jboss-web>
<security-domain>jboss-web-policy</security-domain>
<valve>
<class-name>org.jboss.web.rewrite.RewriteValve</class-name>
</valve>
</jboss-web>
Создаём файл rewrite.properties в этой же папке (WEB-INF) со следующими правилами переадресации:
RewriteCond %{HTTP:X-Forwarded-Proto} http
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
На этом настройка серверной части закончена.
Заливаем данные на сервер, выполняя сакральное:
git add .
git commit -m 'Init git server'
git push
Скачиваем менеджер для удалённого администрирования gitblit: gitblit.googlecode.com/files/manager-1.1.0.zip [8]
Подключаемся к нашему серверу habr-dark008.rhcloud.com, логин и пароль стандартные: admin, admin.
Необходимо лишь сменить пароль администратора, остальные настройки на ваше усмотрение.
Сервер так же можно настроить через веб-интерфейс, но автор советует использовать менеджер: в нём больше настроек, меньше глюков.
Более тонкая настройка: gitblit.com/setup.html [9]
Исходники: github.com/gitblit [10] или code.google.com/p/gitblit/source/list [11]
Баг-трекер: code.google.com/p/gitblit/issues/list [12]
Обсуждение: groups.google.com/group/gitblit [13]
Google+: plus.google.com/114464678392593421684 [14]
Спасибо Суворову Андрею за рецензирование текста.
Автор: ddark008
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/java/15354
Ссылки в тексте:
[1] хостинге: https://www.reg.ru/?rlink=reflink-717
[2] мозг: http://www.braintools.ru
[3] www.getlocalization.com/gitblit/: http://www.getlocalization.com/gitblit/
[4] gitblit.com/screenshots.html: http://gitblit.com/screenshots.html
[5] demo-gitblit.rhcloud.com: https://demo-gitblit.rhcloud.com
[6] Регистрируемся на openshift: https://openshift.redhat.com/app/account/new
[7] https://openshift.redhat.com/app/console/application_types/jbossas-7 : https://openshift.redhat.com/app/console/application_types/jbossas-7
[8] gitblit.googlecode.com/files/manager-1.1.0.zip: https://gitblit.googlecode.com/files/manager-1.1.0.zip
[9] gitblit.com/setup.html: http://gitblit.com/setup.html
[10] github.com/gitblit: http://github.com/gitblit
[11] code.google.com/p/gitblit/source/list: http://code.google.com/p/gitblit/source/list
[12] code.google.com/p/gitblit/issues/list: http://code.google.com/p/gitblit/issues/list
[13] groups.google.com/group/gitblit: http://groups.google.com/group/gitblit
[14] plus.google.com/114464678392593421684: https://plus.google.com/114464678392593421684
Нажмите здесь для печати.