🧱 Суть

Ветки (branches) позволяют разрабатывать новые функции и исправлять ошибки независимо от основной ветки проекта.

Общее правило: Одна задача – одна ветка.

После завершения работы изменения объединяются с основной веткой через Pull Request.

📦 Основные команды

Проверить текущую ветку

git branch

Текущая ветка отмечается символом *.

Посмотреть все ветки

Локальные:

git branch

Локальные и удалённые:

git branch -a

Создать новую ветку

Современный способ:

git switch -c branch-name

Например:

git switch -c feature/login

Старый аналог:

git checkout -b branch-name

Переключиться между ветками

Современный способ:

git switch branch-name

Например:

git switch main

Старый аналог:

git checkout main

Отправить новую ветку на GitHub

Первый пуш:

git push -u origin branch-name

Например:

git push -u origin feature/login

После этого достаточно выполнять:

git push

Удалить ветку

Локально:

git branch -d branch-name

Удалённо:

git push origin --delete branch-name

📦 Именование веток

В большинстве проектов используется формат:

тип/краткое-описание

Наиболее распространённые типы:

ТипНазначениеПример
featureНовый функционалfeature/login-form
fixИсправление ошибокfix/api-timeout
hotfixСрочное исправлениеhotfix/login-crash
refactorРефакторингrefactor/api-layer
choreТехнические измененияchore/update-deps

Рекомендации

Хорошее имя ветки:

  • на английском;
  • в kebab-case;
  • короткое и понятное.

Хорошо:

feature/weather-history
fix/mobile-scroll
refactor/api-layer

Плохо:

newBranch
fixBug
project123

Если проект использует систему задач (например, Jira), часто добавляют идентификатор:

feature/JIRA-142-login-form
fix/JIRA-205-api-timeout

🎯 Вывод

  • каждая задача выполняется в отдельной ветке;
  • новые ветки создаются от актуальной main;
  • после первого git push -u достаточно обычного git push;
  • после завершения работы ветки обычно удаляются.

🔗 Связано