Глоссарий: хранение исходного кода, DevOps и передача программного продукта

Этот глоссарий поможет разобраться в терминах, связанных с хранением и передачей исходного кода, DevOps-практиками, CI/CD-инфраструктурой и юридической формализацией программного продукта. Мы собрали определения, которые часто встречаются в проектах, где требуется надёжная архитектура поставки и контроля исходников.

Хранение исходного кода

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

  • Централизованный Git-сервер (например, GitLab, GitHub)
  • Версионирование, теги, changelog
  • Резервное копирование и защита от потери
  • Изолированные среды (dev/stage/prod)
  • Архивы исходного кода с commit ID
     

Управление исходным кодом

  • Организация структуры веток, документации, прав доступа и процессов взаимодействия с репозиторием.
  • Стандарты ветвления: main, dev, feature/, release/
  • Документация в коде (README, CONTRIBUTING.md)
  • Управление правами доступа по ролям
  • Контроль изменений и журналирование
  • Процессы ревью и мержей (Merge Request)

Контроль версий

Система отслеживания, хранения и восстановления изменений в кодовой базе.

  • Использование Git или аналогичных систем
  • Commit ID как контрольная точка
  • Защищённые ветки и правила мержей
  • Возможность отката и аудита истории
  • Интеграция с CI/CD для контроля изменений

Git-доступ

Режимы и правила подключения к Git-репозиторию для разных ролей проекта.

  • Разграничение прав
  • SSH-ключи по ролям
  • Политика защищённых веток
  • Журналирование действий пользователей
  • Отказ от прямого доступа для заказчика

CI/CD

Непрерывная интеграция и доставка — автоматизация процессов сборки, тестирования и деплоя.

  • GitLab CI/CD, Jenkins, GitHub Actions
  • Стадии: build, lint, test, scan, deploy
  • Версионирование артефактов
  • Работа с раннерами и переменными окружения
  • Отчётность и логирование пайплайнов

DevOps-инфраструктура

Совокупность практик и инструментов, обеспечивающих согласованную работу разработки и эксплуатации.

  • Контроль версий + автоматизация сборки
  • Инфраструктура как код (IaC)
  • Хранилища секретов (Vault)
  • GitOps и интеграция с Kubernetes
  • Мониторинг, логирование, инцидент-менеджмент

Передача исходного кода

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

  • Архив с зафиксированным commit ID
  • Состав и changelog
  • Инструкция по сборке / развёртыванию
  • Документация, лицензии
  • Подписание акта приёма-передачи

Акт приёма-передачи кода

Юридически значимый документ, фиксирующий факт передачи исходного кода и составных материалов.

  • Дата, стороны, подписи
  • Указание commit ID и состава поставки
  • Приложение changelog и инструкции
  • Связь с договором или ТЗ
  • Возможность аудита по документу

Vault

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

  • Интеграция с CI/CD
  • Доступ по ролям и политике
  • Автоматическая ротация ключей
  • Аудит доступа и логирование
  • Использование вместо хранения секретов в коде

Архив с исходным кодом

Подготовленный архив для передачи — содержит конкретную версию проекта и сопроводительную документацию.

  • Форматы: .tar.gz, .zip
  • commit ID и changelog внутри
  • Инструкция по сборке и запуску
  • Подпись контрольной суммы
  • Может быть актирован или заверен

17.05.2025