Сборка vs Релиз в контексте 1С

Разъяснение различий между техническими и продуктовыми понятиями в версионировании конфигураций 1С

Введение

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

Ключевой момент: В 1С "сборка" — это техническое понятие, а "релиз" — продуктовое. Они связаны, но не тождественны.

Система версионирования в 1С

Формат версии в 1С: 1.0.1.1

Редакция.Подредакция.Версия.Сборка

Редакция (Major)

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

Подредакция (Minor)

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

Версия (Patch)

Исправления ошибок и небольшие улучшения. Не добавляет нового функционала, но улучшает стабильность и производительность.

Сборка (Build)

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

Сборка vs Релиз: Сравнительный анализ

Критерий Сборка (Build) Релиз (Release)
Определение Технический артефакт, результат компиляции исходного кода конфигурации Продуктовая версия, готовая для поставки конечным пользователям
Частота создания При каждом изменении конфигурации (ежедневно, несколько раз в день) Периодически, после накопления достаточного количества изменений (недели, месяцы)
Назначение Внутреннее использование: разработка, тестирование, отладка Внешнее использование: поставка клиентам, установка на рабочие базы
Стабильность Может быть нестабильной, содержать незавершенный функционал Должна быть стабильной, прошедшей все этапы тестирования
Нумерация Автоматическое увеличение последней цифры (1.0.1.1, 1.0.1.2) Семантическое версионирование (1.0.1.1, 1.1.0.1)
Документация Может отсутствовать или быть минимальной Обязательная полная документация: описание изменений, инструкции по установке
Тестирование Автоматические тесты, smoke-тестирование Полный цикл тестирования: интеграционное, регрессионное, приемочное

Практические примеры

Сценарий 1: Разработка новой функциональности

1
Начальная версия
1.0.1.15
2
Ежедневные сборки
1.0.1.16, 1.0.1.17, ...
3
Релиз кандидат
1.1.0.24
4
Финальный релиз
1.1.0.25

Сценарий 2: Исправление критической ошибки

1
Продакшен версия
1.1.0.25
2
Сборка с исправлением
1.1.0.26
3
Экстренный релиз
1.1.1.26

Интеграция в процесс разработки

Сборки в ветке develop

В ветке разработки создаются многочисленные сборки (1.2.0.1, 1.2.0.2, ...), которые используются для:

  • Интеграционного тестирования
  • Демонстраций заказчику
  • Раннего обнаружения конфликтов
Сборки в ветке release

В релизной ветке создаются стабилизационные сборки (1.1.0.20, 1.1.0.21, ...), которые:

  • Проходят интенсивное тестирование
  • Могут стать релиз-кандидатами
  • Содержат только исправления ошибок
Релизы из ветки main

В основной ветке помечаются только стабильные сборки, которые становятся релизами:

  • Версия 1.1.0.25 → Релиз 1.1.0
  • Версия 1.1.1.30 → Релиз 1.1.1
  • Версия 2.0.0.15 → Релиз 2.0.0

Рекомендации по управлению версиями

Для сборок
  • Автоматически увеличивайте номер сборки при каждом коммите
  • Используйте CI/CD для автоматического создания сборок
  • Ведите журнал сборок с указанием изменений
  • Регулярно удаляйте устаревшие сборки
Для релизов
  • Придерживайтесь семантического версионирования
  • Создавайте теги в репозитории для каждого релиза
  • Ведите историю изменений (changelog)
  • Обеспечьте возможность отката к предыдущему релизу
Важно: В 1С номер сборки автоматически увеличивается платформой при сохранении конфигурации в файл. Для управления этим процессом рекомендуется использовать специализированные инструменты (например, Vanessa.Additions) или скрипты, которые контролируют версионирование в соответствии с выбранной методологией.

Заключение

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

Ключевые выводы
  • Сборка — технический артефакт, результат компиляции, может создаваться многократно в день
  • Релиз — продуктовая версия, готовая для поставки, создается периодически после тщательного тестирования
  • Одна версия релиза (например, 1.1.0) может соответствовать нескольким сборкам (1.1.0.23, 1.1.0.24, 1.1.0.25)
  • Управление версиями в 1С должно учитывать как технические (сборки), так и продуктовые (релизы) аспекты

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