Привет, ребята! Andou Здесь, бэкэнд -инженер/веб -разработчик/технический лидер для Битмама ответ Итальянское веб -агентство со штаб -квартирой в Милане, Турине и Лондоне.
В этой статье я хотел бы поговорить с вами о Yagbw — Еще один git Рабочий процесс ветвления , Рабочий процесс GIT ветвян, с которым мы обычно работаем.
Давайте начнем!
Вступление: ветвящий рабочие процессы
Когда вы решите контролировать свой проект (и вы должны сделать), используя GIT, вас несколько просят выбрать модель ветвления или рабочий процесс.
Я перечислил самые распространенные рабочие процессы в моем Список технических ресурсов , которые:
- Git поток : Вероятно самая известная модель ветвления
- Поток GitHub : Моя любимая модель ветвления, хорошая для CI/CD
- Разработка на основе багажника : Тощая модель хорошей для начальных этапов проекта
YAGBW/Основы
Что ж, без лишних слов, вот рабочий процесс ветвления, который мы обычно используем, чтобы справиться с нашими веб -проектами с незначительными головными болями и довольно полным контролем над поставленными функциями.
Это решение где -то между потоком GIT и потоком GitHub.
Основные правила:
- Вы должны создать
Мастер
(илиmain
) ветвь исертификат
ответвляться - Вы никогда не будете настаивать на
Мастер
(илиmain
) - Вы никогда не будете настаивать на
сертификат
- Вы никогда не будете сливаться
Cert
наМастер
(илиmain
)
Разработка вещей:
- Каждому разрешению функции или ошибок нужна конкретная ветвь, которую мы можем называть Особенности филиалов
- Особенности филиалов Нужно говорящее имя, обычно
функция/<имя>
для функции иhotfix/
Для разрешения ошибок - Вы всегда создаете новый Особенности филиалов от
Мастер
(илиmain
) - Когда вы закончите свою работу над Особенность филиала Вы сначала объедините это на
Cert
иметь это проверилось - Когда ты Особенность филиала был проверен, вы можете объединить его в
Мастер
(илиmain
) - Слияние
Мастер
(илиmain
) в вашей филиалах на регулярной основе.
Развертывание материалов (при условии, что у вас есть хотя бы производство и сертификация
Cert
может быть развернут в любой момент времени на вашем Сертификация Окружающая средаМастер
(илиmain
) может быть развернут в любой момент времени на вашем Производство Окружающая среда- слияние Особенность филиала на
сертификат
- развернуть свое Сертификация Окружающая среда
- тест
- слияние Особенность филиала на
Мастер
(илиmain
) - развернуть свое Производство Окружающая среда
Yagbw/addons
Конечно, приведенный выше рабочий процесс должен работать хорошо или не давать природу проекта, с которым вы используете его. Вы можете чувствовать себя комфортно с некоторыми аддонами в процессе:
Аддон № 1/Режим фазы предварительной фазы
Говоря о веб -проектах, всегда есть начальный этап, на котором вы не находитесь в сети со своим проектом, и слово CI/CD вообще не имеет смысла. На этом этапе вы можете рассмотреть возможность слияния и проверить непосредственно на Мастер
(или main
).
Addon #2/Подумайте о добавлении запросов на вытяжение
Вы можете чувствовать себя комфортно ввести PRS для слияния Особенности филиалов на сертификат
и на Мастер
(или main
). Это зависит от вас, но это может помочь контролировать ваш поток.
Addon #3/Используйте теги
Ну, это не на самом деле аддон, потому что я настоятельно рекомендую его. Подумайте о том, чтобы сделать аннотированный тег для каждого слияния на сертификат
и на Мастер
(или main
). Это действительно помогает с откатами.
Помните, что вы всегда можете отделить новую филиал из предыдущего тега ( git cakeout -b newbranch yourtag
).
Заворачивать
Это все на сегодня. Я надеюсь, что это было полезное чтение. Пожалуйста, прокомментируйте ваши предложения и отзывы. Кроме того, дайте мне знать, что вы думаете о нашем ветвлении рабочего процесса И если у вас есть другие дополнения, мы должны подумать о введении.
Оригинал: «https://dev.to/andou/yagbw-yet-another-git-branching-workflow-hf4»