Подготовка предрелиза
Сливаем интересующие изменения в релизную ветку одним коммитом. Конфликты образуются так как в релиз пишутся изменения одним коммитом. Эти команды подправят большинство конфликтов в пользу ветки откуда происходит сливание (как правило из мастера)
git checkout release
git merge -Xtheirs master --squash
git checkout master --theirs .
Проверяем не остались ли конфликты. Как правило конфликты остаются с файлами которые были удалены. Принимаем remote изменения (как правило изменения из master)
git mergetool
Убедиться, что сборка собирается
Бывает такое, что файл удалён в мастере, но как-то просочился в релиз, и ему не хватает зависимостей, так как была реорганизация. Если какие-то файлы не удалились в предыдущем шаге и поэтому сборка выдает ошибки — просто удалям эти файлы физически.
Для cloud:
npm run compile
Для pwa:
npm run build
Залить проект на сервер
npm run deploy:staging
Возможные проблемы
Если при деплое выйдет ошибка нехватки памяти, значит необходимо увеличить память для node процессов и запустить деплой повторно
export NODE_OPTIONS=--max-old-space-size=8192