Представлена открытая платформа для организации совместной разработки GitLab 4.0

Представлен релиз GitLab 4.0, платформы для организации совместной работы с Git-репозиториями, напоминающей по своим возможностям GitHub, но позволяющей развернуть web-сервис управления проектом на своём подконтрольном сервере. GitLab пользуется популярностью в области организации командной разработки различных корпоративных проектов, предоставляя инструменты похожие на Github Enterprise и Gitorious.

Предлагаемый в GitLab web-интерфейс не копирует напрямую, но во многом напоминает GitHub. GitLab поддерживает создание отдельных проектов, отслеживание ошибок, обработку запросов на добавление кода (рабочий процесс основан на обработке merge-запросов), навигацию по веткам и тегам, контроль за изменениями, рецензирование кода, многоуровневое управление доступом, Wiki, обмен небольшими кусками кода, наглядный анализ различий между версиями кода, средства визуализации ветвления репозитория и многое другое.

Код проекта написан на языке Ruby с использованием фреймворка Ruby on Rails и распространяется под свободной лицензией MIT. Для хранения данных поддерживается Redis и MySQL/PostgreSQL. Для разграничения доступа к репозиториям используется надстройка Gitolite, предоставляющая средства для поддержания отдельной базы виртуальных пользователей c возможностью доступа к Git-репозиториям по SSH-ключам без создания системных аккаунтов. Параллельно развивается свободный сервер непрерывной интеграции GitLab CI, который можно использовать совместно с GitLab для автоматизации тестирования и постоянного контроля за качеством кодовой базы, в том числе обеспечивая проверку пересборкой для каждого вносимого изменения.

Из новшеств, добавленных в GitLab 4.0, можно отметить:

  • Поддержка пространств имён для проектов (группа, пользователь, глобальный проект). Пространство имён (группа или отдельный пользователь) определяет владельца проекта. Администратор может перемещать проекты из одного пространства имён в другое (например, между пользователями и группами);
  • Для каждой группы разработчиков теперь создаётся отдельная поддиректория в gitolite, в рамках которой размещаются все проекты данной группы;
  • Для пользователей добавлен атрибут с именем пользователя (ранее разработчики идентифицировались только по email). При обновлении со старых выпусков, для уже существующих пользователей имя автоматически будут сгенерировано из email. Все проекты пользователя теперь ассоциируются с его именем в форме имя_пользователя/проект;
  • Для группы добавлена поддержка задания владельца группы, который может создавать проекты от имени группы и управлять доступом участников к каждому из проектов;
  • Улучшена поддержка СУБД PostgreSQL;
  • Расширены средства отправки уведомлений по email;
  • Реорганизованы настройки;
  • Добавлена возможность загрузки из web-интерфейса патчей для отдельных коммитов, улучшено отображение отличий между коммитами;
  • Реализован режим быстрого добавления новых участников групп через страницу group
  • Прекращена поддержка SQLite из-за возникновения блокировок при одновременном обращении к gitlab нескольких пользолвателей.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.