Files
docs/projects/template-sync-strategy/canons/workflows/review-and-merge.md
S.Gromov bdb99ade62
All checks were successful
CI/CD Pipeline / build (push) Successful in 39s
CI/CD Pipeline / docker (push) Successful in 1m30s
CI/CD Pipeline / deploy (push) Successful in 8s
refactor: перенести сборку в проекты
- перенесены каноны и VitePress-конфиги в projects/<slug>

- добавлены корневой и проектные build.ts для сборки артефактов

- добавлены shared-библиотеки сборки в projects/_shared/lib

- обновлены CI, Dockerfile, package.json, gitignore и README

- удалена сборка frontend-агента
2026-05-22 19:07:10 +03:00

2.1 KiB
Raw Blame History

title, description
title description
Review и merge Как проверять и вливать sync-ветку с обновлением шаблона в master приложения.

Review и merge

После подготовки sync/* ветки обновление шаблона должно попасть в master через PR/MR.

Создать PR/MR

Параметры:

source: sync/update-template-vX
target: master

Цель review — увидеть:

  • какие изменения пришли из шаблона;
  • какие конфликтные решения были сделаны в sync/*;
  • не попали ли в обновление лишние изменения приложения;
  • проходят ли проверки проекта.

Настройки merge

Для sync-PR/MR важно:

squash = off
fast-forward merge = хорошо
merge commit       = допустимо
squash merge       = нельзя

Squash нельзя использовать, потому что он может уничтожить связь истории master с историей template. Особенно это критично после миграционного sync/bootstrap-template.

Проверки перед merge

Проверьте граф истории:

git --no-pager log --oneline --graph --decorate --all --max-count=50

Проверьте итоговый diff:

git --no-pager diff origin/master...sync/update-template-vX

Проверьте проект обычными командами конкретного приложения, например:

npm run lint
npm run build

После merge

После успешного merge в master можно удалить временную ветку:

git branch -d sync/update-template-vX
git push origin --delete sync/update-template-vX

Проверьте, что master теперь содержит обновление шаблона:

git fetch origin
git --no-pager log origin/template..origin/master --oneline
git --no-pager diff origin/template...origin/master