Git-flow — это модель ветвления в Git, предложенная Винсентом Дриссеном, которая структурирует разработку, упрощает выпуск версий и поддерживает стабильность проекта.
🚩Основные компоненты git-flow
🟠Основные
master: Эта ветка содержит стабильные и готовые к выпуску версии продукта. Каждый коммит в master должен представлять собой релизную версию.
develop: Эта ветка используется для интеграции всех новых разработок. Она содержит последний готовый к выпуску код, но ещё может быть нестабильной.
🟠Поддерживающие
feature: Эти ветки создаются для разработки новых функций. Они ответвляются от develop и сливаются обратно в develop после завершения работы. Например,
feature/новая-функция.release: Эти ветки создаются для подготовки нового релиза. Они ответвляются от develop, и после завершения всех необходимых исправлений и тестирования сливаются в master и develop. Например
release/1.0.0hotfix: Эти ветки используются для срочных исправлений в стабильной версии продукта. Они ответвляются от master и после завершения работы сливаются в master и develop. Например,
hotfix/исправление-ошибки.🚩Как это используется:
🟠Создание новой функции:
Создайте ветку feature от develop.
Разработайте новую функцию.
Слейте feature ветку обратно в develop.
🟠Подготовка к новому релизу:
Создайте ветку release от develop.
Проведите финальное тестирование и внесите мелкие исправления.
Слейте release ветку в master и develop.
Создайте тег для новой версии на master.
🟠Срочные исправления:
Создайте ветку hotfix от master.
Исправьте проблему.
Слейте hotfix ветку в master и develop.
Создайте тег для новой версии на master.
🚩Плюсы
🟠Организация: Четкое разграничение между стабильной версией и текущей разработкой упрощает управление проектом.
🟠Параллельная разработка: Легкость создания и слияния веток способствует одновременной работе над несколькими функциями.
🟠Поддержка релизов: Обособленные ветки для подготовки релизов и срочных исправлений упрощают управление версионностью.
🚩Минусы:
🟠Сложность: Может быть избыточным для небольших проектов с небольшими командами.
🟠Требования к дисциплине: Требует строгого соблюдения правил для обеспечения стабильности и непрерывности разработки.
Ставь 👍 и забирай 📚 Базу знаний