Files

2.3 KiB

Git Flow


Ветки

main           # Стабильная, production-ready
develop        # Интеграция фич
feature/*      # Новая функция (ветвится от develop)
hotfix/*       # Срочное исправление (ветвится от main)
release/*      # Подготовка релиза (ветвится от develop)

Когда какую ветку использовать

Ситуация Ветка Цель
Начало работы над фичой feature/idea-analysis develop
Исправление бага в production hotfix/crash-on-empty main
Подготовка релиза release/1.2.0 main
Эксперимент experiment/new-auth

Conventional Commits

<тип>[optional scope]: <описание>

[optional body]
[optional footer]

Типы

Тип Пример Влияние на версию
feat feat: add AI analysis endpoint MINOR
fix fix: handle empty idea list PATCH
BREAKING feat!: change API response format MAJOR
docs docs: update README
refactor refactor: extract IdeaService
test test: add smoke tests for auth
chore chore: update dependencies

Примеры

feat(api): add POST /ideas/{id}/analyze endpoint

- Celery task for async analysis
- Fallback to direct call if Celery unavailable
- Store results in AgentReport table

Closes #42
fix: validate email format on registration

BREAKING: removed support for dotless emails

Commit Message

50 символов: краткое описание (императив, без точки)

72 символа: тело коммита при необходимости.
Можно писать несколько строк.
- Каждый пункт с дефиса
- Описываем ЧТО и ЗАЧЕМ, а не КАК

[ASK] Вопросы по Git

  • Git Flow или GitHub Flow? (GitHub Flow проще: main + feature/* + PR)
  • Нужны ли релизные ветки? (да, если несколько версий в поддержке)
  • Squash при merge? (рекомендуется: 1 PR = 1 коммит в develop)