Планирование

Майлстоуны групп

Создавайте майлстоуны, управляйте ими по всем проектам для организации работ к конкретной дате с уровня групп. Просматривайте все дефекты, связанные с майлстонуном, над которым вы сейчас работаете, из различных проектов.

Мощный трэкер дефектов

Быстро изменяйте статус, назнайчайте ответственного или выбирайте майлстоун одновременно для нескольких дефектов. Легко настраивайте фильтры для списка дефектов по любому свойству. Просматривайте майлстоуны и дефекты по нескольким проектам.

Сроки для отдельных дефектов

Вы можете устанавливать срок исправления для каждого отдельного дефекта. Это довольно распространенная эффективная практика управления небольшими задачами.

Перемещайте дефекты между проектами

У вас есть возможность перемещать дефекты между проектами в GitLab. Все линки, история, комментарии будут скопированы в новый дефект, автоматически сохраняя референс на старый дефект. Такой подход также упрощает интеграцию с внешними трэкерами.

Доски дефектов

В GitLab есть доски дефектов. Каждая колонка на доске соответствует метке, которая определена в трэкере дефектов. Таким образом, если метка соответствует состоянию, то доска будет автоматически показывать, в каком состоянии находятся дефекты проекта.

Доски дефектов групп

Для групп можно настроить свою доску дефектов, которая будет показывать дефекты всех проектов, входящих в группу.

Создавайте новый дефекты прямо на доске дефектов

GitLab позволяет добавлять новые дефекты, просматривая доску дефектов, при этом с возможностью назначения меток.

Создавайте свои доски дефектов, используя метки

Доска дефектов основана на вашей системе меток, где метка определяет колонку со списком дефектов, отфильтрованных по этому признаку. Каждый дефект может иметь множество меток, что позволяет создавать свои наглядные представления списков дефектов для задуманного котекста.

Добавляйте сразу несколько дефектов на доску

From an Issue Board, you can add multiple issues to lists in the board by selecting one or more existing issues.

Настраиваемые доски дефектов

Associate a board with a milestone, labels, an assignee, and a weight

Полноэкранный режим отображения доски дефектов

Доску дефектов можно перевести в режим полного экрана в окне браузера, чтобы разместить больше колонок и больше информации на экране.

Multiple Issue Boards

В больших компаниях работа может идти одновременно по сотням проектов. В редакции GitLab Premium есть возможность настроить несколько различных досок для одного проекта, чтобы было планировать и координировать задачи в различных контекстах, например, настроить отдельную доску по стадиям релизов, другую - по функциональным требованим, третью - по командам разработчиков. Несколько досок могут быть весьма эффективны для больших и продолжительных проектов, с большим числом участников или для репозиториев, хранящих код сразу нескольких продуктов.

Эпики

Эпики позволяют объединить функциональные требования и дефекты в одну коллекцию, что упрощает планирование и отслеживание для больших проектов.

Дорожные карты

Дорожные карты GitLab позволяют спроецировать и показать планируемые сроки выхода эпиков на ленте времени.

Трэкинг времени

GitLab позволяет вносить предварительные данные оценки времени на разработку, а также фиксировать фактически потраченное количество времени на исправление дефекта, выполнения задачи или обработку мерж-реквеста.

Конфиденциальные дефекты

GitLab позволяет создавать дефекты с повышенным уровнем конфиденциальности, которые будут видимы только участникам проекта с уровнем доступа Reporter или выше.

Связанные дефекты

Помечайте дефекты как связанные и отслеживайте их статус.

Веса дефектов

Для реализации Agile практик по управлению разработкой есть возможность определять веса дефектов.

Диаграммы сгорания задач

GitLab содержит диаграммы сгорания задач, как часть управления майлстоунами. Диаграммы сгорания задач позволяют проще и быстрее отслеживать динамику работ по спринту или новому релизу.

Несколько ответственных за дефект

Возможность назначить на один дефект более одного ответственного.

Интеграция с чатом Mattermost

Компонента Mattermost может быть автоматически установлена и интегрирована пектировщиком GitLab Omnibus.

Автоматически закрывайте дефекты по окончанию обработки мерж-реквеста

Используя ключевые слова и команды в комментариях к мерж-реквесту, можно автоматически изменять статус дефектов на выполненный.

Расширенный словарь разметки маркдаун

GitLab использует расширенный словарь разметки маркдаун - ‘GitLab Flavored Markdown’ (GFM), содержащий целый ряд полезных функций.

Шаблоны дефектов и мерж-реквестов

GitLab позволяет в формате маркдаун задать шаблон-инструкцию для заполнения поля описания дефекта или мерж-реквеста. Следование инструкциям и требованиям к форме и содержанию из шаблона при создании нового дефекта или мерж-реквеста может существенно повысить эффективность дальнейших коммуникаций.

Создание дефекта из email

Создание дефекта по входящему письму электронной почту на определнный ящик.

Создание, поиск и просмотр дефектов из чата

Создание, поиск и просмотр дефектов из чата с использованием набора специальных слэш-команд.

Сервис-деск

Возможность внешним пользователям создавать инциденты в проектах на вашем GitLab сервере без наличия аккаунта GitLab и прав доступа к проектам. Управление обращениями осуществляется через обычный пользовательский интерфейс GitLab.

Метки

Простой и одновреммно мощный способ систематизации дефектов и мерж-реквестов с помощью текстовых меток, например, "дефект", "документация", "отчет".

Настраиваемые ключевые слова закрытия дефектов

Настраиваемые ключевые слова закрытия дефектов, которые можно использовать в описании мерж-реквеста, чтобы автоматически закрывать дефекты.

Управление портфелем проектов

Планирование и отслеживание задач на уровнях отдельного проекта и всего портфеля проектов. Управление ресурсами и загрузкой.

Разработка

Граф коммитов и инструменты отчетности

GitLab предоставляет граф коммитов и различные средства формирования отчетов по активности участников проектов.

Предварительный просмотр изменений в модуле Ревью приложений (Review Apps)

В модуле GitLab CI/CD есть возможность создать новую среду для каждой отдельной ветви разработки. Можно сделать работу с димическими средами более эффективной, используя предварительный просмотр изменений из мерж-реквеста.

Поиск файлов с нечеткой логикой

Мощный поисковик файлов в репозитории с нечеткой логикой поиска

Мерж с перемоткой с опцией перемещения

На уровне проекта есть возможность зафиксировать политику слияния веток по модели мерж с перемоткой (fast-forward merge). Если мерж с перемоткой невозможен, то будет предложена опция перемещения изменений (rebase)

Объединение коммитов и мерж

Объединяйте несколько коммитов в один коммит, чтобы упростить работу с историей коммитов и откатов в ветвях.

Согласования мерж-реквестов

В тех проектах, где требуется несколько согласований, GitLab позволяет настроить политику работы мерж-реквестами в проектах так, чтобы каждый мерж-реквест обязательно был утвержден одним или более участиком. В частности, можно указать минимальное количество требуемых согласований или указать список согласующих каждый мерж-реквест по-умолчанию.

Мерж-реквесты

Создавайте мерж-реквесты, в описании используйте инструкции вида @member, чтобы автоматически уведомить данного участника проекта о сделанных изменениях и вашем запросе на мерж ветвей.

Разрешение конфликтов мержа

GitLab предоставляет удобный пользовательсктй интерфейс для разрешения конфликтов мержа, где можно визуально определить какую редакцию оставить.

Cherry-picking changes

Cherry-pick any commit in the UI by simply clicking the Cherry-Pick button in a merged merge request or a specific commit.

Отчеты по действиям пользователей

Просматривайте списки последних коммитов, мержей, комментариев и других действиях участников проекта.

Настраиваемые уведомления

Получайте уведомления по электронной почте, в чате Slack или ToDos в случае любых изменений в дефектах или мерж-реквестах.

Блокировка файлов

Работа нескольких людей с одним и тем же файлом всегда связана с риском потери изменений. Разрешение конфликтов при мерже нетекстовых файлов очень затруднено и требует массы услилий. В редакции GitLab Premium есть возможность для разработчика установить статус блокировки изменений на файл, с котором ведется работа, чтобы предотвратить любые модификации этого файла другими участниками проекта.

Откат отдельных коммитов или мерж-реквестов через графический интерфейс

GitLab предоставляет возможность отката как отдельных коммитов, так и мерж-реквестов через графический интерфейс.

Полноценная работа с ветвями

Полный функционал работы с ветвями Git, включая просмотр истории, граф коммитов, перемещение коммитов и т.д.

Защищенные ветви

Возможность настроить дополнительные права доступа к определенным ветвям, которые необходимо защитить.

Ограничения на действия пуша и мержа для определенных пользователей

Для защищенных ветветй можно дополнительно определеить, кому из участников проекта разрешены действия с ветвью.

Защищенные тэги

Возможность настроить дополнительные права доступа к определенным тэгам, которые необходимо защитить.

Встроенные wiki на Git

Отдельная система документирования Wiki встроена в каждый проект GitLab. Каждый экземпляр Wiki - это отдельный репозиторий Git.

Шаблоны проектов

При создании нового проекта можно указать шаблон, в котором может содержаться какой-то код, настройки сценария непрерывной интеграции или конвейера установки.

Web IDE - интегрированная среда разработки

Интегрированная среда разработки будет скоро встроена непосредственно в GitLab.

Мощная утилита импорта проектов

GitLab умеет импортировать проекты и дефекты из множества источников (GitHub, BitBucket, Google Code, FogBugz, Gitea и вообще любого Git по URL). Миграция из SVN подробно описана в различных инструкциях и документации.

Обсуждение изображений

При просмотре коммита или в режиме просмотра различий мерж-реквеста можно вести обсуждение как всего изображения, так и отдельной его области.

Обсуждения коммитов в мерж-реквестах

Добавляйте свои комментарии к коммитам в контексте обсуждения мерж-реквеста

Создавайте мерж-реквест по email

Мерж-реквест можно создать по email, отправив письмо с указанием названия, описания и названия ветви.

Блокировка обсуждений

В ряде случаев участик проекта с ролью Master или выше может заблокировать дальнейшее обсуждение дефекта или мерж-реквеста.

Бэджик нового участника

Выделение действий новых участников в проекте

Несколько утверждающих на ревью кода

В GitLab у вас есть возможность установить параметр минимального количества требуемых утверждений при ревью кода мерж-реквеста, чтобы соответствовать политикам контроля качества. Утверждение можно отменить или откатить в любой момент.

Легкая миграция репозитория с других провадеров

GitLab предоставляет инструменты миграции репозитория кода со всей историей и списка дефектов практически с любого аналогичного сервис-провайдера.

Пуш-правила

Проверяйте код на соответствие корпоративным требованиям и автоматически отклоняйте/ разрешайте коммит.

Перенос проекта с GitLab.com

Import projects from GitLab.com to a private GitLab instance.

Установите ограничения на размер кода на уровне проекта, группы или всего репозитория

Для управления дисковым пространством вы можете установить ограничения на размер кода на уровне проекта, группы или всего репозитория.

Версии мерж-реквестов

Просматривайте и сравнивайте отличия в версиях нескольких мерж-реквестов.

Встроенные команды принятия решений в комментариях и обсуждениях

Ревью кода или текста будет быстрее и эффективнее с использованием встроенных в текстовый редактор специальных команд. В GitLab все комментарии интерпретируются как обсуждения. Можно так настроить проект, чтобы мерж-реквест мог быть согласован только тогда, когда все дискусии считаются закрытыми.

Коммиты с цифровой подписью GPG

Коммиты могут быть подписаны пользователем, чтобы подтвердить авторство изменений.

Отклонение неподписанных коммитов

В редакции GitLab Premium можно установить требование обязательной цифровой подписи всех коммитов.

Обработчик коммитов

Обработчик коммитов проверяет, что в каждом пуше есть только коммиты пользователя, выполняющего команду отправки кода.

Возможность модификации всех полей мерж-реквеста

Мерж-реквесты GitLab могут быть изменены автором, владельцем проекта и пользователями с уровнем доступа Master. При этом все поля мерж-реквеста могут быть модифицированы, включая целевую ветвь.

Мерж в случае успешного завершения сценария развертывания

Если при ревью кода можно принять решение на слиение ветвей, но в данный момент уже исполняются те или иные задачи сценария развертывания CI/CD, можно выбрать опцию с отложенным слиянием сразу после успешного заверешения заданий CI/CD.

Бэджик "В работе" или Work in Progress (WIP) для мерж-реквестов

Чтобы защитить мерж-реквесты от случайного утверждения, вы можете поставить специальный беджик на этот мерж-реквест. Таким образом, вы можете предотвратить установку незавершенных изменений.

Git менее требователен к объему диска

Один репозиторий Git как правило, занимает в несколько раз меньше места, чем такой же репозиторий в SVN.

Создание проекта с пушем Git

Отправьте команду пуш в желаемый репозиторий и новый приватный проект будет автоматически создан.

Тестирование

Статические тесты по информационной безопасности приложений

GitLab позволяет встроить запуск статических тестов по информационной безопасности (SAST) в сценарии развертывания CI/CD; Тесты предназначены для поиска известных уязвимостей или дефектов в коде и в библиотеках, поставляемых вместе с приложением. Результаты проверки затем добавляются в мерж-реквест. Данная функциональность входит в пакет Auto DevOps.

Статические тесты по информационной безопасности контейнеров Docker

В процессе сборки образа контейнера Docker для вашего приложения, GitLab может запустить статические тесты для поиска известных уязвимостей или дефектов в среде, куда вы устанавливаете свой код. Результаты проверки затем добавляются в мерж-реквест. Данная функциональность входит в пакет Auto DevOps.

Динамическое тестирование по информационной безопасности

Как только ваше приложение будет установлено и запущено в нужной среде, GitLab позволяет запустить динамические тесты по информационной безопасности (Dynamic Application Security Testing - DAST) в рамках сценария CI/CD. Будет осуществлена проверка на наличие известных уязвимостей типа XSS, которые можно выявить только на работающем приложении.

Автомасштабирование CI раннеров

Возможность автоматически запускать и останавливать виртуальные машины, чтобы задачи сборки протекали максимально быстро при минимальных ресурсах.

Отладка контейнеров с встроенным web-терминалом

Возможность отладки ваших контейнеров в любой среде, используя встроенный GitLab web-терминал. GitLab открывает терминальную сессию непосредственно с формы среды, если ваше приложение установлено на Kubernetes. Web-терминал - это мощный и удобный инструмент поиска и исправления ошибок, доступный в вашем браузере.

Сложные модели сценариев развертывания

Сценарии развертывания могут быть достаточно сложными с множеством последовательных и параллельных задач. Чтобы было легче представить, что делает сценарий, GitLab строит графическое представление модели сценария, а также показывает текущий статус процесса.

Качество кода

Специальные отчеты по качеству кода, доступные на форме мерж-реквеста, дают представление о возможных последствиях и влиянии на приложение еще до момента, как желаемые изменения будут утверждены.

Графики сценариев развертывания для нескольких проектов

Графики сценариев развертывания для нескольких проектов позволяют увидеть, как в реальном времени происходит установка изменений в различных средах для различных проектов, связанных между собой архитектурно, что характерно, например, для микро-сервисов.

История изменений сред

История изменений сред позволяет узнать, что установлено на ваших серверах на текущий момент, посмотреть детальную информацию по всем предыдущим установкам. Также есть возможность заново переустановить текущую версию или даже откатиться до одной из предудыщих версий.

Настраиваемый путь до файла конфигураций CI/CD

При настройке сценария развертывания CI/CD для проекта вы можете настроить путь до уже имеющегося файла конфигураций CI/CD, в том числе вне репозитория проекта.

Расчет показателя покрытия кода тестами

GitLab позволяет парсить логи вывода задач сценариев развертывания CI/CD с помощью настраиваемой утилиты regex. Например, можно проанализировать лог работы популярного инструмента SimpleCov. Далее эту информацию можно увидеть на формах GitLab или опубликовать на любой HTML странице или воспользоваться генератором GitLab Pages.

Минимальная потребность в конфигурации CI/CD

GitLab CI/CD не требует массы усилий по настройке логики конвейера сборки и публикации приложений, по сравнению с аналогичными инструментами типа Jenkins.

Управление лицензиями

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

Сборка

Встроенный репозиторий контейнеров

GitLab содержит встроенный репозиторий контейнеров Docker и позволяет вам просто загружать и скачивать образы контейнеров в рамках конвейера сборки. Полностью интегрирован с системой управления репозиториями Git.

Релиз

Встроенный конвейр CI/CD

GitLab содержит встроенный конвейр задач автоматизации непрерывной интеграции и непрерывной установки приложений. Используйте возможности CI/CD для сборки ваших приложений, запуска тестов, публикации web сайтов или web приложений. Результаты выполнения задач публикуются на форме мерж-реквеста.

Управляйте статическими web-сайтами c помощью GitLab Pages

GitLab Pages предоставляет простую систему для управления страницами и хостинга статических web-сайтов, используя файлы из GitLab репозитория все возможности конвейера CI с поддержкой доменов и HTTPS.

Запуск установки из чата

Возможность запуска установки изменений из одной среды в другую по команде из чата.

Онлайн визуализация HTML артефактов

Возможность просмотра отчетов тестирования, качества кода, покрытия кода тестами и т.д. непосредственно с форм мерж-реквестов без необходимости скачивания отчетов на локальный диск.

Просмотр артефактов

Конвейр GitLab CI умеет загружать полученные в результате работы джобов артефакты обратно в GitLab, которые затем становятся доступными для просмотра через браузер.

Запуск конвейера по расписанию

Возможность настроить расписание запуска конвейера CI/CD.

Среды и установки

GitLab не только может отвечать за сборку и тестирование ваших проектов, но также и за установку в вашей инфраструктуре со всеми преимуществами трэкинга самого процесса из одного инстрементария. Среды чем-то напоминают тэги для ваших CI-джобов, описывая, где код должен быть установлен.

Защищенные раннеры

Защищенные раннеры предназначены для защиты определенной информации, например, логинов и паролей к промышленной среде, разрешая только джобам, исполняющимся на защищенных ветках, получить доступ к таким данным.

Сделайте свой web-сайт из файлов приватного проекта с бесплатным хостингом

GitLab Pages - уникальный простой генератор статических HTML страниц по вашим шаблонам и файлам проекта GitLab с бесплатным хостингом.

Поддержка доменов для GitLab Pages

GitLab Pages позволяет настроить DNS с вашим доменным именем и бесплатным хостингом на ресурсах GitLab, включая настройку на выделенный IP адрес.

Поддержка множества доменов для GitLab Pages

GitLab Pages позволяет настроить DNS с вашим доменным именем, а также поддоменом и любыми алиасами (синонимами).

Поддержка HTTPS для GitLab Pages

Установите SSL/TLS сертификат бесплатно для вашего сайта и домена, работающего на GitLab Pages.

Встроенная верификация доменов в GitLab Pages

GitLab Pages осуществляет проверку, являетесь ли создатель сайта на GitLab Pages владельцем заявленного домена.

GitLab Pages поддерживает любые статические генераторы (SSG) web-сайтов

Задействуя GitLab Pages, вы можете также использовать любые статические генераторы (SSG) web-сайтов или даже их конкретные версии, например, Middleman 4.1.1

Примеры проектов на GitLab Pages

Выберете один из понравившихся примеров, сделайте форк проекта в свой репозиторий и начните использовать GitLab Pages.

GitLab Pages поддерживает все плагины Jekyll

Вы можете использовать любую версию Jekyll вместе с GitLab Pages. При этом все плагины Jekyll будут поддерживаться и работать.

Возможность настройки страницы для обработки ошибки (404) в GitLab Pages

В GitLab Pages есть возможность настраивать свои страницы для ошибок.

Доски развертывания

В редакцию GitLab Premium входят Доски развертывания, показывающие консолидированную информацию по текущему статусу и состоянию всех джобов CI ковейров для всех сред, развернутых и работающих в облаке Kubernetes. GitLab возьмет информацию с Kubernetes самостоятельно и опуликует на Доске.

Канареечные развертывания

В редакции GitLab Premium есть возможность мониторинга канареечных развертываний при установке ваших приложений с Kubernetes.

Автоматический повтор запуска джобов CI при сбоях

Возможность настроить параметр в кофигурации конвейера .gitlab-ci.yml , чтобы GitLab CI/CD автоматически повторно запускал джобы конвейра в случае их сбоя заданное число раз.

Безопасность конвейера

Разрешения на запуск конвейера сборки и развертывания CI/CD для защищенных ветвей проверяется всякий раз по списку правил для текущего пользователя, включая права на запуск нового конвейера, перезапуск джобов, выполнения ручных действий.

Использование внешних файлов в описании конвейера CI/CD

В файле кофигурации конвейера CI/CD вы можете использовать внешние файлы, содержащие типовые действия в сценарии развертывания.

Конфигурация

Поддержка кластера Kubernetes

GitLab поддерживает работу с кластерами Kubernetes

Простая установка Helm, Ingress и Prometheus на Kubernetes

Простая установка Helm Tiller, Nginx Ingress и Prometheus на кластер Kubernetes одним кликом непосредственно из интерфейса GitLab.

Защищенные секретные переменные

Возможность объявить секретные переменные как "защищенные", чтобы разрешить доступ к их значением только для джобов работающих с защищенными ветками. Таким образом, только авторизованные пользователи смогут получить доступ к таким переменным в рамках запуска конвейра CI/CD или для ручных действий.

Секретные переменные для определенных сред

Возможность определить область применения секретной переменной только для указанной среды развертывания.

Секретные переменные для определенных групп

Возможность определить область применения секретной переменной только для проектов указанной группы.

Auto DevOps

Набор функций Auto DevOps дает возможность применить лучшие практики DevOps в ваших проектах, автоматически настравиваясь под принятую у вас методологию разработки ПО. Auto DevOps автоматически определяет сборки, тесты, установки и мониторит приложения.

Простая интеграция с имеющимся кластером Kubernetes

Добавьте в ваш проект информацию о кластере Kubernetes и получите доступ к нему из конвейра CI/CD для ревью приложений и запуска сценария развертывания вашего приложения.

Простое создание кластера Kubernetes через аккаунт GKE

Возможность создания кластера Kubernetes непосредственно из вашего проекта GitLab. Для этого просто необходимо добавить информацию о вашем аккаунте Google. Созданный кластер затем может быть использован и в пакете Auto DevOps для автоматической установки вашего приложения.

Мониторинг

Мониторинг производительности приложений

GitLab собирает и публикует статистику по метрикам производительности приложений, используя встроенный продукт Prometheus. Разработчики получают инструмент для анализа влияния изменений на производительность приложений, а также мониторить работу серверов и приложений, не выходя из GitLab.

Мониторинг серверов

GitLab включает в себя готовый к использованию продукт для мониторинга серверов и приложений - Prometheus.

Тестирование производительности браузеров

Возможность простого обнаружения регресса производительности web приложений до установки в промышленную среду. Модуль тестирования производительности браузеров входит в пакет Auto DevOps и умеет собирать соответствующую аналитику по рутовой странице приложения.

Масштабируемость

Балансировщик нагрузки для СУБД PostgreSQL

Возможность распределения запросов на чтение по нескольким экземплярам СУБД PostgreSQL, чтобы уменьшить нагрузку на главную базу данных и улучшить показатель скорости ответа.

Подгруппы: группы в группах

Используйте подгруппы, чтобы упростить управление большим количеством пользователей и проектов.

Хранилище артефактов

Артефакты можно хранить в Object Storage (Amazon S3)

Хранилище для LFS файлов

LFS файлы можно хранить в Object Storage (Amazon S3)

Глобально распределенные экземпляры репозиториев с опцией GitLab Geo

Когда команды разработки геграфически распределены по двум и более локациям, использование одного сервера GitLab может быть затруднено, поскольку клонирование и скачивание больших репозиториев занимает много времени. В этом случае может помочь опция GitLab Geo, автоматически синхронизирующая изменения в зеркалах главного репозитория, размещенных на дополнительных экземплярах GitLab в локациях команд разработки.

Доступность

Конфигурация высокой доступности

GitLab можно установить и настроить в режиме высокой доступности, распределяя нагрузку по нескольким серверам приложений, баз данных и т.д.

Встроенные инструменты для резервного копирования и восстановления

GitLab предоставляет CLI интерфейс для задач резервного копирования и восстановления всей конфигурации.

Поддержка режима высокой доступности PostgreSQL HA

Возможность настроить кластер PostgreSQL HA для GitLab.

Аварийное восстановление

Аварийное восстановление GitLab на другом сервере за минуты.

Поддержка режима высокой доступности

Редакция GitLab Premium позволяет настроить несколько серверов GitLab, работающих в режиме высокой доступности. Наш инженер GitLab поможет оценить ваши требования по отказоустойчивости и предложит оптимальную архитектуру/конфигурацию решения.

Стандарты

Гранулярная настройка ролей пользователей и их привилегий

Управление доступом и привилегиями с помощью 5 различных ролей и отдельных настроек для внешних пользователей. При настройке привилегий руководствуйтесь ролью пользователя в проекте, а не правами на чтение/запись. Не стоит давать доступ к исходному коду пользователю, чьи задачи ограничены работой с трэкером дефектов.

Отправка email сообщений всем участникам проекта, группы или всем пользователям сервера

Администратор сервера Gitlab имеет возможность отправки email сообщения сразу всем участникам проекта, группы или всем пользователям сервера.

Пересылка логов пакетировщика Omnibus

Возможность перенаправления логов Omnibus в центральную систему.

Закрытие группы на добавление новых участников

Владельцы групп могут запретить добавление новых участников в проекты группы.

Ключи SSH

Полный контроль над технологией и дллиной ключей SSH, используемых для доступа к GitLab.

Синхронизация групп LDAP

GitLab предоставляет возможность администраторам настроить автоматическую синхронизацию групп пользователей GitLab с группами LDAP, что позволяет упростить задачи управления аутентификацией, правами и привилегиями, параметрами SSH ключей.

Фильтры LDAP

При настройке синхронизации групп по LDAP можно использовать инструмент фильтров по атрибутам LDAP.

Аудит логов

Для поддержки следования участниками проектов корпоративным политикам и практикам GitLab предоставлет администаторам расширенную систему доступа к логам всех действий пользователей. Любое изменение может быть проконтролировано, проанализировано и отслежено.

Аудиторы

Спциально предусмотренный профиль пользователей для аудиторов с правами только на чтение ко всем проектам, группам и другим ресурсам в рамках сервера GitLab.

Безопасность

Аутентификация пользователей по Kerberos

Аутентификация пользователей по Kerberos

Блокировка пуша секретных файлов

Блокировка пуша важной или секретной информации от случайной публикации в репозиторий.

Быстрый поиск SSH ключей

Быстрая авторизация пользователей за счет быстрого движка поиска по индексированой базе ключей SSH.

Поддержка

Стандартное время реакции на обращение в поддержку - 4 часа рабочего графика

Служба технической поддержки пользователей GitLab к вашим услугам.

Поддержка в аварийных ситуациях работаем в режиме 24/7

Время реакции службы поддержки GitLab составляет 30 минут для аварийных ситуаций.

Поддержка процеса обновления версий

Согласуйте время со службой поддержки и запланируйте совместное обновление версии GitLab. Инженеры поддержки будут в реальном времени сопровождать процесс обновления и помогать решать возможные проблемы.

Время реакции - следующий рабочий день

Вам будет оказана техническая поддержка максиммум в течение следующего рабочего дня.

Innersourcing

Проекты

Организуйте ваш репозиторий по частным, внутренним или публичным проектам.

Иннерсоурсинг

Внутренние проекты GitLab могут задействовать внутренний потенциал компании по реализации различных проектов.

Расширенный Глобальный Поиск

Гибкий элластичный поиск позволяет осуществлять поиск кода по всему серверу GitLab максимально эффективно.

Расширенный Синтаксический Поиск

Используйте расширенные запросы для более точного поиска.

API к Глобальному поиску

Используйте API для поиска по всему серверу GitLab.

Аналитика активности пользователей

Отчеты по активности пользователей позволяют проанализировать вклад каждого учасника проекта по его работе с дефектами, мерж-реквестами или кодом.

Интеграция

Экспорт проектов

GitLab позволяет экспортировать ваши проекты в другие системы контроля версий.

Интеграция с AD / LDAP

Синхронизуйте группы, управляйте SSH ключами, управляйте привилегиями, аутентификацией и т.д. Интеграция с AD / LDAP позволяет решать массу рутинных задач по администрированию сервера GitLab.

Поддержка нескольких серверов LDAP / AD

Вы можете решать вопросы аутентификации и авторизации пользователей в GitLab посредством интеграции сразу с несколькими серверами LDAP / AD

Полнофункциональный API

GitLab предоставляет API для большинства функций, позволяя разработчикам плотно интегрировать свои продукты с GitLab.

Добавляйте и удаляйте профили администаторов при синхронизации с группой LDAP

GitLab позволяет настроить синхронизацию в том числе и группы администаторов.

Интеграция с Atlassian Crowd

Интеграция с Atlassian Crowd

Поддержка нескольких серверов LDAP (включая Microsoft AD)

GitLab позволяет проводить аутентификацию пользователей по нескольким серверам LDAP.

Web-хуки групп

Возможность настроки web-хуков на уровне групп проектов.

Создание зеркала удаленного репозитория

Возможность создания зеркала удаленного репозитория на вашем локальном сервере.

Статус сборок в Jenkins CI в мерж-реквесте GitLab

Интеграция с Jenkins CI позволяет видеть статус сборок в Jenkins CI в мерж-реквесте GitLab

Экспорт списка дефектов в формате CSV

Список дефектов GitLab можно экспортировать в формате CSV и даже отправить с вложением в письме уведомления.

Создан для контейнеров и Docker

GitLab включет свой собственный репозиторий контейнеров, раннер для Docker CI, и полностью готов для реализации полного конвейера сборки и развертывания для контейнеров без необходимости что-либо дополнительно устанвливать, настраивать и обслуживать.

Создан для хостинга

GitLab и ядро конвейера CI/CD изначально проектировался для хостинга и обслуживания тысяч репозиториев. GitLab поддерживает Red Hat OpenShift и Kubernetes.

Запуск задач установки на Windows

GitLab Runner поддерживает Microsoft Windows и позволяет исполнять задачи сборки и установке на этой платформе. Вы можете собирать, тестировать, устанавливать приложения для Windows, задействуя потенциал PowerShell и скриптов ОС.

Запуск задач установки на macOS

GitLab Runner поддерживает macOS и позволяет исполнять задачи сборки и установке на этой платформе. Вы можете собирать, тестировать, устанавливать приложения для macOS, задействуя потенциал Shell и других интерпретируемых языков в скриптах.

Запуск задач установки на Linux ARM

GitLab Runner поддерживает операционные системы Linux на архитектуре ARM и позволяет исполнять задачи сборки и установке на этой платформе. Вы можете собирать, тестировать, устанавливать приложения для Linux, задействуя потенциал Shell и других интерпретируемых языков в скриптах.

Запуск задач установки на FreeBSD

GitLab Runner поддерживает FreeBSD и позволяет исполнять задачи сборки и установке на этой платформе. Вы можете собирать, тестировать, устанавливать приложения для FreeBSD, задействуя потенциал Shell и других интерпретируемых языков в скриптах.

Пакеты интеграции

GitLab интегрируется с LDAP, внешними продуктами сборки и развертывания и другими инструментальными средствами управления разработкой (ALM), проектами (PLM), Agile и средствами автоматизации.

Настраиваемые Git-хуки

Технология Git-хуков позволяет запускать различные скрипты при наступлении определенных событий в репозитории Git. GitLab поддерживает все типы и варианты использования Git-хуков и показывает на формах всю информацию по истории срабатывания хуков, ошибках исполнения и т.д.

Интеграция с JIRA

Для обеспечения эффективного взаимодействия разработчиков в GitLab и менеджеров в Jira, модуль интеграции с Jira предоставляет инсчерпыващий функционал для обмена информацей между двумя системами.

Панель разработки Jira

На информационной панели разработки в Jira можно разместить информацию из репозитория GitLab и переходить к данным GitLab непосредственно по линкам из панели.

Поддержка Git LFS 2.0

Технология Git LFS позволяет управлять файлами большого размера, например, аудио, видео, графическими файлами а также 3D-моделями. Git LFS 2.0 помогает командам координировать работу с такого рода бинарными данными через функцию блокировки ресурса за текущим исполнителем.

Различные механизмы аутентификации

GitLab может интегрироваться с большинством провайдеров сервисов аутентификации и авторизации.

Использование SSL сертификатов от Let's Encrypt для Omnibus GitLab

Возможность быстро активировать защищенный доступ к GitLab по HTTPS с помощью сертификатов Let's Encrypt.

Аналитика активности

Просмотр аналитики активности участников групп.

Открытый исходный код

Поддержка сообществом пользователей

Сообщество пользователей GitLab активно общается и поддерживает новых пользователей.

Новая функциональность каждый месяц

GitLab выпускает свежий релиз с новой функциональностью четко 22 числа каждого месяца.

Выбор и гибкость

Свой экземпляр GitLab CE/EE можно установить на отдельный физический сервер, виртуальный сервер, специальное оборудование, а также в контейнер. Можно использовать GitLab, размещенный в облаке GitLab.com. Также есть большой выбор операционных систем для установки GitLab.

Доступ к серверу

У вас есть полный контроль над вашим сервером GitLab, что позволяет вам дополнительно устанавливать любые внешние средства информационной безопасности (защита от проникновения, мониторинг и т.д.). Расширенная система логгирования GitLab сохраняет информацию о всех действиях и событиях, произошедших в системе.

Свой аппаратный сервер

Вы можете использовать под установку GitLab свой отдельный аппаратный сервер, что позволяет вам, имея полный контроль над аппаратными ресурсами (дисками, процессорами, оперативной паматью и т.д.), масштабировать решение под растующие нагрузки.

Запуск другого ПО на том же сервере

Сервер GitLab не обязательно должен быть выделенным под одну задачу. Вы можете устанавливать на сервер и другое программное обеспечение, если позволяют ресурсы, например, для обнаружения вторжений.

Использование ПО для конфигурационного управления

Совместно с GitLab вы можете использовать специализированное программное обеспечение для конфигурационного управления, например, Puppet, Chef, Ansible.

Использование Unix инструментария для обслуживания и мониторинга

GitLab никак не запрещает использование стандартных Unix инструментов для задач адмиинстрирования, обслуживания или мониторинга.

Готовый пакет для установки

Вы можете скачать пакет для установки для вашей операционной системы или использовать официальные репозитории GitLab для пакетной установки.

Один конфигурационный файл

Все настраиваемые опции для администрирования GitLab сведены ровно в один файл.

Доступ к исходным кодам

Любая редакция GitLab доступна в виде исходных кодов. Вы можете исследовать код, чтобы проверить насколько продукт соответствует вашим требованиям по безопасности. Можете собрать продукт из исходных кодов. Вы можете даже модифицировать код под ваши требования и собрать полностью свою редакцию продукта.

Изоляция

Вы можете полностью изолировать ваш сервер GitLab от Внешних сетей. Gitlab не требует связи экземпляра ни с какими сервисами облака GitLab.

Управление

Возьмите задачи обслуживания сервера в свои руки и перестаньте зависеть графика отключений хостинг-провайдера. Сами контролируйте вопросы резервного копирования, хранения и доступа к вашему исходному коду.

Обновление версий

GitLab выпускает новые версии с новыми функции каждый месяц, но это вы решете, когда и какую версию ставить к себе на сервер.

Простой процесс обновления

Процесс обновления версии максимально упрощен через использованием стандартных Linux пакетировщиков.

В хорошей компании

GitLab - это самое распространенное решение, устанавливаемое на собственные ресурсы компаний, для управления разработкой программного обеспечения. Более 100 000 организаций по всему миру используют GitLab.

Одно решение для всех задач

Пользователи в компании GitLab используют функции GitLab практически для всех внутрених операций от трэккинга дефектов до вопросов управления инфраструктурой, сайтом, маркетингом.

Эффективность

Анализ цикла разработки

GitLab имеет информационную панель с временными метриками разработки ПО, показывающую статистику временных затрат по стадиям разработки от идеи до внедрения.

Управление задачами

Когда пользователь упомянут в комментариях или ему назначен мерж-реквест или дефект, GitLab автоматически добавит в список персональных задач пользователя новую запись, что упрощает и ускоряет процесс разработки.

Доступность

На текущий момент облачный сервис GitLab.com имеет показатель доступности 99,5%. Целевой уровень на ближайшее время - 99,95%.

Создание новой ветки из записи дефекта

GitLab позволяет создавать новую ветку из формы дефекта в трэкере. При этом информация о номере дефекта и названии автоматически добавится к описанию ветки для упрощения последующего трэкинга.

Быстрые действия

GitLab позволяет использовать слэш-команды непосредственно в тексте комментариев или обсуждениях дефектов и мерж-реквестов, чтобы осуществлять быстрые действия по смене состояний, назначения ответственных, созданию новых дефектов и т.д., не выходя из текущей формы.

Одно комплесное решение

В то время как решения конкурентов требуют интеграции и настройки нескольких инструментов между собой, чтобы закрыть все потребности в автоматизации всего цикла разработки ПО, GitLab является законченным комплексным решением, готовым к использованию сразу после установки.

Поддержка IPv6

GitLab поддерживает протокол IPv6 при установке на собственные ресурсы. Облачный хостинг GitLab.com пока НЕ поддерживает этот протокол в силу определенных ограничений провайдера.

Администрирование

GitLab позволяет настроить синхронизацию групп пользователей в внешним LDAP, что существенно облегчает задачи администрирования профилей пользователей, их ролей, SSH ключей, прав, а также аутентификации в системе.

Рейтинг разработчиков

Постоянно совершенствуйте свой технологический цикл разработки. Сравнивайте свои метрики и показатели со статистикой других компаний разработчиков.

Рапределенная система управления Git репозиториями

GitLab основан на рапределенной системе контроля версий Git. Каждый пользователь имеет у себя полную копию репозитория, что обеспечивает быстрый доступ к истории, простое управление ветвями и эффективную разработку.

Git - это быстро

Выполнение сравнение версий, просмотр истории, коммиты и слияние ветвей, получение нужной ревизии и любые операции с ветвями в Git происходят очень быстро.

Быстрый интерфейс

Работая на персональном компьютере, планшете или смартфоне, GitLab оптимизирован для демонстрации наилучшей производительности пользовательского интерфейса.

Облако

Бесплатный конвейр сборки и установки (CI/CD) с выделенными или разделяемыми раннерами

Облачный сервис GitLab.com предоставляет возможность воспользоваться разделямыми раннерами бесплатно в объеме до 2000 минут для частных проектов и без ограничений для публичных проектов. Или вы можете настроить свой раннер для более быстрой сборки без ограничения на количество минут, удовлетворяющий вашим специальным технологическим требованиям.

Ожидаемые улучшения

Лучший хостинг для больших проектов с открытым исходным кодом

GitLab позиционируется как лучший хостинг сервиса управления Git репозиториями для любых проектов разработки ПО. Дополнительно служба поддержки прилагает максиммум услилий, чтобы сделать комфортной и эффективной работу крупных проектов с большим количеством участников.

Простая установка из дистрибутива

Простая установка из дистрибутива для Linux, macOS или Windows.

Эффективное использование аппаратных ресурсов

GitLab может успешно работать на конфигурациях с 512MB оперативной памяти. Скомпилированный код на Go менее требователен к процессору.

Владелец кода

Возможность указать ответственно владельца кода в репозиторий

Визуальная группировка дефектов по меткам

Возможность объединить дефекты по метке или майлстоуну на доске дефектов.

Ограничения использования личных почтовых ящиков

В коммитах вы можете использовать системный почтовый email-адрес, на который нельзя отправить ответ, вместо указания своего личного почтового ящика.