Я новичок в git и Jenkins. Мы хотим использовать Jenkins и следовать концепции feature-branch-workflow., который, как мне кажется, похож на поток GitHub.
Я знаю, что основная ветвь всегда должна быть той, что в настоящее время развернута в рабочей среде, но когда следует обновлять главную ветвь? Похоже, есть два варианта:
- ПЕРЕД развертыванием в рабочей среде: запрос на вытягивание утверждается, и успешное слияние с мастером запускает сборку, развертывание в промежуточной среде, тестирование контроля качества, а затем кто-то нажимает кнопку для развертывания в рабочей среде.
- ПОСЛЕ развертывания в рабочей среде: что-то (например, запрос на вытягивание) запускает сборку, тестирование и т. д., и код успешно выпускается в рабочую среду — ТОГДА мастер обновляется.
Но в случае использования варианта (1), если тесты не проходят, а недавно обновленный мастер не будет выпущен в производство, нужно ли просто сбросить мастер перед тем, как пойти домой на день?