Представлен (http://blog.gitlabhq.com/gitlab-4-release/) релиз GitLab 4.0 (http://gitlab.org/), платформы для организации совместной работы с Git-репозиториями, напоминающей по своим возможностям GitHub, но позволяющей развернуть web-сервис управления проектом на своём подконтрольном сервере. GitLab пользуется популярностью в области организации командной разработки различных корпоративных проектов, предоставляя инструменты похожие на Github Enterprise и Gitorious.<center><a href="http://blog.gitlabhq.com/images/4_0/gitlab_dash.png">... src="http://www.opennet.me/opennews/pics_base/0_1356637756.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></a></center>
Предлагаемый в GitLab web-интерфейс не копирует напрямую, но во многом напоминает (http://demo.gitlabhq.com/) GitHub. GitLab поддерживает (http://blog.gitlab.com/about-the-gitlab-project/) создание отдельных проектов, отслеживание ошибок, обработку запросов на добавление кода (рабочий процесс основан на обработке merge-запросов), навигацию по веткам и тегам, контроль за изменениями, рецензирование кода, многоуровневое управление доступом, Wiki, обмен небольшими кусками кода, наглядный анализ различий между версиями кода, средства визуализации ветвления репозитория и многое другое.
<center><a href="http://blog.gitlabhq.com/images/screens/gitlab_net.png"... src="http://www.opennet.me/opennews/pics_base/0_1356637352.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></a></center>
Код проекта написан на языке Ruby с использованием фреймворка Ruby on Rails и распространяется (https://github.com/gitlabhq) под свободной лицензией MIT. Для хранения данных поддерживается Redis и MySQL/PostgreSQL. Для разграничения доступа к репозиториям используется надстройка Gitolite (https://github.com/sitaramc/gitolite), предоставляющая средства для поддержания отдельной базы виртуальных пользователей c возможностью доступа к Git-репозиториям по SSH-ключам без создания системных аккаунтов. Параллельно развивается свободный сервер непрерывной интеграции GitLab CI (https://github.com/gitlabhq/gitlab-ci), который можно использовать совместно с GitLab для автоматизации тестирования и постоянного контроля за качеством кодовой базы, в том числе обеспечивая проверку пересборкой для каждого вносимого изменения.
<center><a href="http://blog.gitlabhq.com/images/4_0/gitlab_project_issues.pn... src="http://www.opennet.me/opennews/pics_base/0_1356637691.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></a></center>
Из новшеств, добавленных в GitLab 4.0, можно отметить:
- Поддержка пространств имён для проектов (группа, пользователь, глобальный проект). Пространство имён (группа или отдельный пользователь) определяет владельца проекта. Администратор может перемещать проекты из одного пространства имён в другое (например, между пользователями и группами);
- Для каждой группы разработчиков теперь создаётся отдельная поддиректория в gitolite, в рамках которой размещаются все проекты данной группы;
- Для пользователей добавлен атрибут с именем пользователя (ранее разработчики идентифицировались только по email). При обновлении со старых выпусков, для уже существующих пользователей имя автоматически будут сгенерировано из email. Все проекты пользователя теперь ассоциируются с его именем в форме имя_пользователя/проект;
- Для группы добавлена поддержка задания владельца группы, который может создавать проекты от имени группы и управлять доступом участников к каждому из проектов;
- Улучшена поддержка СУБД PostgreSQL;
- Расширены средства отправки уведомлений по email;
- Реорганизованы настройки;
- Добавлена возможность загрузки из web-интерфейса патчей для отдельных коммитов, улучшено отображение отличий между коммитами;
- Реализован режим быстрого добавления новых участников групп через страницу group#people;
- Прекращена поддержка SQLite из-за возникновения блокировок при одновременном обращении к gitlab нескольких пользолвателей.
<center><a href="http://blog.gitlabhq.com/images/screens/gitlab_team.png"... src="http://www.opennet.me/opennews/pics_base/0_1356637377.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border=0></a></center>
URL: http://blog.gitlabhq.com/gitlab-4-release/
Новость: http://www.opennet.me/opennews/art.shtml?num=35709