Доступен (http://blog.gitlab.org/gitlab-ce-6-dot-4-released/) релиз платформы для организации совместной работы с Git-репозиториями GitLab 6.4 (http://www.gitlab.org), которая по своим возможностям напоминает GitHub, но не привязана к конкретному сервису, распространяется в исходных текстах под свободной лицензией и позволяет развернуть web-сервис управления проектом на своём подконтрольном сервере. Одновременно доступен (http://blog.gitlab.org/gitlab-ci-4-dot-1-released/) релиз развиваемого проектом сервера непрерывной интеграции GitLab CI 4.1 (https://github.com/gitlabhq/gitlab-ci), который можно использовать совместно с GitLab для автоматизации тестирования и постоянного контроля за качеством кодовой базы, в том числе обеспечивая проверку пересборкой для каждого вносимого изменения.
Код проекта написан на языке Ruby с использованием фреймворка Ruby on Rails и распространяется (https://github.com/gitlabhq) под свободной лицензией MIT. Для хранения данных поддерживается связка Redis с MySQL или PostgreSQL. GitLab наиболее востребован для организации командной разработки в корпоративных проектах, так как позволяет без привязки к облачному вендору развернуть инструментарий, похожий на Github Enterprise и Gitorious. Web-интерфейс GitLab во многом напоминает (http://demo.gitlabhq.com/) GitHub, но, тем не менее, не копирует его, а лишь повторяет наиболее удачные принципы. GitLab поддерживает (http://blog.gitlab.com/about-the-gitlab-project/) создание отдельных проектов, отслеживание ошибок, обработку запросов на добавление кода (рабочий процесс основан на обработке merge-запросов), навигацию по веткам и тегам, контроль за изменениями, рецензирование кода, многоуровневое управление доступом, Wiki, обмен небольшими кусками кода, наглядный анализ различий между версиями кода, средства визуализации ветвления репозитория и многое другое.
Из новшеств можно отметить:
- Поддержка создания внутренних проектов, которые доступны для клонирования и просмотра только для авторизированных пользователей GitLab, вошедших в систему под своим логином. Внутренние проекты являются промежуточным звеном между общедоступными публичными проектами и приватными проектами, открытыми лишь для избранных пользователей;
<center><a href="http://blog.gitlab.org/images/6_4/new-project.png">&... src="http://www.opennet.me/opennews/pics_base/0_1387914256.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>
- Поддержка просмотра изменений в режиме "бок о бок", при котором разные редакции файлов отображаются в разных панелях. По умолчанию пока оставлен старый унифицированный режим;
<center><a href="http://blog.gitlab.org/images/6_4/diff.png"><img src="http://www.opennet.me/opennews/pics_base/0_1387914451.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>
- Возможность перемещения проекта в архив, после чего проект замораживается, становится доступным только для чтения. Архивные проекты скрываются из общих списков и поиска, но остаются видимы в профиле автора;
<center><a href="http://blog.gitlab.org/images/6_4/arch.png"><img src="http://www.opennet.me/opennews/pics_base/0_1387914642.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>
- Расширение возможности обращения в внешнему web-обработчику при наступлении определённого события в GitLab. В частности, добавлена поддержка отправки запроса при создании уведомления о проблеме или закрытии запроса на слияние изменений;
<center><a href="http://blog.gitlab.org/images/6_4/hook.png"><img src="http://www.opennet.me/opennews/pics_base/0_1387914908.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>
- Расширенные возможности сортировки сообщений о проблемах;
<center><a href="http://blog.gitlab.org/images/6_4/issues.png"><img src="http://www.opennet.me/opennews/pics_base/0_1387914968.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>
- На странице проекта обеспечена ссылка на файл README, при его наличии;
<center><a href="http://blog.gitlab.org/images/6_4/readme.png"><img src="http://www.opennet.me/opennews/pics_base/0_1387915038.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>
- Добавлен скрипт для автоматизации обновления GitLab до новой версии (позволит обновиться с GitLab 6.4 до 6.5);
- В GitLab CI 4.1 добавлена поддержка отправки уведомлений о завершении сборки на email. Список адресов может быть задан для каждого проекта. Уведомления также могут быть направлены автору коммита, который привёл к пересборке. Можно настроить как получение уведомлений о всех сборках, так и уведомлений только о сборках, при которых возникли проблемы.
<center><a href="http://blog.gitlab.org/images/ci_4_1/email.png"><img src="http://www.opennet.me/opennews/pics_base/0_1387915148.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>
URL: http://blog.gitlab.org/gitlab-ce-6-dot-4-released/
Новость: http://www.opennet.me/opennews/art.shtml?num=38724