docs(git-flow): add README.md

This commit is contained in:
Максим Бучнев
2025-05-31 15:24:22 +03:00
parent 26a3b73da6
commit fc8de5b998

67
git-flow/README.md Normal file
View File

@@ -0,0 +1,67 @@
# 🛠️ Conventional Commits
**Git Flow** — это удобная модель ветвления, которая помогает команде структурировать работу над проектом, разделяя разработку новых фич, исправление багов, подготовку релизов и поддержку продакшна.
---
## 📂 Основные ветки
| Ветка | Назначение |
|-------------|----------------------------------------------------|
| `main` | Стабильная версия продукта (продакшн) |
| `develop` | Актуальная версия с последними изменениями (дев) |
---
## 🌱 Временные ветки
| Тип ветки | Префикс | Назначение |
|----------------|----------------|-----------------------------------------------------------|
| Feature | `feature/` | Новая фича или улучшение |
| Bugfix | `bugfix/` | Исправление ошибки (в процессе разработки) |
| Hotfix | `hotfix/` | Срочное исправление продакшн-ошибки |
| Release | `release/` | Подготовка к релизу (фикс багов, финальные правки) |
---
## 🛠️ Git Flow CLI
### 🚀 Инициализация Git Flow
Один раз в репозитории:
```bash
git flow init
git flow init --force # для перезапуска инициализации
```
Для префикса можно написать `v`, с остальными предложениями можно соглашаться
### 🌱 Работа с ветками
Названием ветки выставляем ID задачи/карточки в redmine/trello
#### 🔧 Начать фичу:
```bash
git flow feature start название
# Работаем, коммитим
git flow feature finish название
# Фича будет влита в develop
```
#### 🛠️ Начать багфикс (в процессе разработки):
```bash
git flow bugfix start название
# Исправляем
git flow bugfix finish название
# Фикс будет влит в develop
```
#### 🚀 Начать релиз:
```bash
git flow release start x.x.x
# вносим правки, тестим, пишем документацию и тд.
git flow release finish x.x.x
# Релиз будет влит в main и develop
# Будет создан Git-тег x.x.x
```
#### 🔥 Начать хотфикс (на проде):
```bash
git flow hotfix start urgent название
# Исправляем
git flow hotfix finish название
# Ветка будет влита в main и develop
# Будет создан Git-тег
```
## ✅ Подсказки
- При завершении разработки во временной ветке (finish) cli перекинет вас на написание `merge-request`. У вас откроется MR файл
через `vim` или `nano`. Не пугайтесь, в большинстве случаев достаточно сохранить все как есть и продолжить работу.
- Иногда при завершении разработки во временной ветке (finish) могут возникнуть конфликты. Тут зависит от IDE.
В JetBrains IDE показываются окошко для резолва конфликтов.