Назад к вопросам
Senior
6
Как устроен git flow — ветки, окружения, деплой?
Компании, где спрашивали
Яндекс
Ответ от нейросети
sobes.tech AI
Git Flow — это популярная модель ветвления, которая помогает организовать разработку и деплой.
Основные ветки:
- master — содержит стабильный код, готовый к продакшену.
- develop — интеграционная ветка для разработки, откуда берутся новые релизы.
Вспомогательные ветки:
- feature/ — для разработки новых функций, ответвляются от develop и сливаются обратно в develop.
- release/ — для подготовки релиза, ответвляются от develop, после тестирования вливаются в master и develop.
- hotfix/ — для срочных исправлений в продакшене, ответвляются от master и вливаются в master и develop.
Окружения обычно соответствуют веткам:
- develop — staging или тестовое окружение;
- master — продакшен.
Деплой происходит из ветки master после прохождения всех тестов и проверки релиза. Hotfix-ветки позволяют быстро исправлять баги в продакшене без ожидания следующего релиза.
Пример команд:
# Создать feature ветку
git checkout develop
git checkout -b feature/new-feature
# После завершения работы
git checkout develop
git merge feature/new-feature
# Создать релиз
git checkout develop
git checkout -b release/1.0.0
# После тестирования
git checkout master
git merge release/1.0.0
git checkout develop
git merge release/1.0.0
# Удалить релиз ветку
git branch -d release/1.0.0