Продукт
Archito НовоеУчится на merge request и показывает, что застряло Интеграции 25
Решения
По роли
Почему AppArch
Ресурсы
Клиенты Цены Контакты
Язык
Связаться с нами

Как ведутся ваши репозитории - с оценкой в одном месте.

Здоровье Git проверяет, как ведётся каждый репозиторий, а не что в нём: защищена ли основная ветка, одобряются ли merge request, есть ли в коммитах ключ задачи, есть ли безопасность в пайплайне, на месте ли нужные файлы. 29 правил и взвешенная оценка на GitHub, GitLab, Bitbucket и Azure DevOps.

Экраны работающей установки

Шесть групп, 29 правил

Каждое правило отвечает на вопрос «да или нет» о том, как ведётся репозиторий, и имеет важность и вес.

5 правил

Защита веток

Основная ветка защищена, нет прямых и принудительных push, ветки релизов и теги защищены.

6 правил

Правила merge request

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

5 правил

Прослеживаемость

Коммиты и заголовки MR содержат ключ задачи, имена веток следуют шаблону, трекер задач подключён.

7 правил

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

SAST, поиск секретов, сканирование зависимостей и контейнеров, SBOM и SonarQube с отчётами в MR - находятся в пайплайне, включая подключённые шаблоны.

5 правил

Порядок в репозитории

CODEOWNERS, закоммиченный lockfile, шаблоны merge request и задач и отсутствие закоммиченных секретных файлов (сопоставление по имени; содержимое не читается). README, .gitignore и SECURITY.md проверяет модуль соответствия.

1 правил

Сам AppArch

Коллектор отчитывался за последние 30 дней, значит остальные оценки актуальны.

Неизвестно - не значит ноль

Правило, на которое платформа или токен не могут ответить, помечается пропущенным и не входит в оценку. Подключение с истёкшим токеном покажет «0 из 2 оцениваемых», а не «29 провала». То же с пайплайном, который не читается целиком: нечитаемый include - это «пропущено», а не «провалено».

Без регистрации и ручных запусков

Каждый проект с Git-подключением участвует с момента добавления.

  1. 01

    Добавьте проект

    Первое сканирование ставится в очередь при создании проекта.

  2. 02

    Сканы обновляются сами

    Плановые сканы перепроверяют каждый репозиторий - изменённая на прошлой неделе настройка видна без запросов.

  3. 03

    Исправляйте и следите за оценкой

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

Что можно проверить на какой платформе

Не каждая платформа отдаёт все настройки через API. Где ответа нет, правило пропускается и не входит в оценку; провалом оно не считается.

GitLab GitHub Bitbucket Azure DevOps
Защищены основная и релизные ветки
Правила слияния: одобрения, без самоодобрения, зелёный пайплайн, закрытые обсуждения пропуск пропуск
Без force push и прямого пуша в основную ветку пропуск пропуск
Исходная ветка удаляется после слияния пропуск пропуск
Защищённые теги, ключ задачи в правилах веток пропуск пропуск пропуск
Ключи задач в коммитах и заголовках MR, именование веток
CODEOWNERS, lockfile, шаблоны, нет закоммиченных секретов частично частично
Инструменты безопасности в CI: SAST, секреты, зависимости, контейнеры, SBOM, SonarQube
Collector активен, трекер задач подключён

Правила, проверяющие много элементов, дают частичный балл: одна незащищённая ветка из семи стоит меньше, чем семь.

Все merge request всех провайдеров в одном списке

Здоровье Git также собирает merge request рабочего пространства в одном месте, на какой бы платформе они ни были.

  • Фильтры по статусу, проекту, автору и целевой ветке или поиск
  • Значок ведёт от каждого проверенного MR к его отчёту ArchPilot
  • Фильтр Archito «дольше обычного» показывает, что застряло

Вопросы о Здоровье Git

Какие платформы поддерживаются?
GitHub, GitLab (gitlab.com или свой сервер), Bitbucket Cloud и Azure DevOps. Правило, на которое платформа не может ответить (например, в Bitbucket и Azure DevOps нет настройки удаления исходной ветки на уровне репозитория), пропускается, а не проваливается.
Читает ли он наш код?
Нет. Он читает настройки репозитория, защиту веток и тегов, последние коммиты и merge request, конфигурацию CI и дерево файлов. Файлы с секретами сопоставляются по имени, их содержимое не читается.
Какие права нужны токену?
Доступа на чтение хватает для большинства правил. Некоторые настройки видны только токену администратора - например, удаление ветки после слияния в GitHub; без него правило пропускается.
Влияет ли Здоровье Git на другие оценки?
Нет. У него своя оценка, она стоит рядом с оценками ArchScan, ArchSecurity и Соответствия в карточке здоровья каждого проекта.

Как это выглядит в продукте

Все скриншоты

Посмотрите, как на самом деле ведутся ваши репозитории

Подключите Git-провайдера в ходе PoC - первые оценки придут сразу после добавления проектов.