Представлена открытая платформа для организации совместной разработки GitLab 4.0
Предлагаемый в 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#people;
- Прекращена поддержка SQLite из-за возникновения блокировок при одновременном обращении к gitlab нескольких пользователей.
Источник: http://www.opennet.ru/opennews/art.shtml?num=35709
|
0 | Tweet | Нравится |
|