Система управления версиями
Общие сведения
Можно использовать хранилище 1С, git или другие системы для управления версиями.
Соглашение о коммитах
Все помещения изменений должны быть осмысленно описаны, главным ориентиром является популярное соглашение о коммитах Conventional Commits.
Для соблюдения требований при использовании хранилища 1С, требуется при помещении измененных объектов в соответствующем д иалоге конфигуратора указывать в комментарии краткое описание характера изменений с точки зрения пользователя. Это в дальнейшем облегчит сборку общего описания изменений к релизу.
Чтобы контролировать шаблон коммитов в хранилище 1С используется служба OproxyDaemon, ссылка на проект Oproxy.
Шаблон коммита:
--GitSyncAuthor [Необязательное имя пользователя хранилища]
[Тип](необязательный контекст): [Короткое описание] (номер задачи)
[необязательное тело]
[необязательная(ые) сноска(и)]
Пример коммита:
--GitSyncAuthor ivanov
fix: Запрет редактирования реквизита (#COEF1C-4663)
Добавлены роли "...";
Добавлены элементы на форме "...".
Примечание: при использовании методологии gitflow, в тексте коммита не указывается номер задачи.
Чтобы изменения автоматически включались в список изменений (CHANGELOG.md
), требуется выбирать правильно [Group
]:
Group | № | Full name | Description |
---|---|---|---|
feat | 0 | 🚀 Features | Новая функция (Добавили новый документ, обработку, отчет, изменили команду и так далее) |
fix | 1 | 🐛 Bug Fixes | Исправление багов/ошибок (Ошибка в ЖР, баг от заказчика, замечание от тестировщика) |
doc | 2 | 📚 Documentation | Изменяется только документация (Заполнение справки в конфигураторе 1С или изменения в каталоге "doc" в проекте в репозитории git) |
perf | 3 | ⚡ Performance | Изменение кода, повышающее производительность (Ускорили запрос или убрали запросы из цикла, добавили блокировки и так далее) |
refactor | 4 | 🚜 Refactor | Рефакторинг кода (Изменение кода, которое не исправляет ошибку и не добавляет функций) |
style | 5 | 🎨 Styling | Изменения не влияющие на смысл кода (пробелы, форматирование, отсутствие точки с запятой...) |
test | 6 | 🧪 Testing | Добавление недостающих тестов или исправление существующих тестов |
chore(release): version x.x.x.x | 0 | 📌 New release of configuration | Выпуск релиза |
chore(release): prepare for x.x.x.x | skip = true | Подготовка к релизу | |
chore(deps.*) | skip = true | Служебные изменения | |
chore(pr) | skip = true | Служебные изменения | |
chore(pull) | skip = true | Служебные изменения | |
chore | 7 | ⚙️ Miscellaneous Tasks | Другие изменения, не влияющие на исходный код или тесты |
ci | 7 | ⚙️ Miscellaneous Tasks |