Перейти к содержанию

Управление ветками

Ветки (branches) — это одна из ключевых возможностей Git, позволяющая вести параллельную разработку разных функций без влияния друг на друга.

Что такое ветка?

Ветка — это легковесный подвижный указатель на коммит. Когда вы создаете ветку, Git не копирует файлы, а просто создает новый указатель. Переключение между ветками меняет файлы в рабочей папке на состояние, соответствующее коммиту, на который указывает ветка.

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

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

# Список локальных веток
git branch

# Список всех веток (локальные + удаленные)
git branch -a

# Подробный список с последним коммитом
git branch -v

Текущая ветка помечена звездочкой *.

Создание ветки

# Создать новую ветку, оставаясь в текущей
git branch <имя-ветки>

# Создать и сразу переключиться на неё (рекомендуется)
git checkout -b <имя-ветки>

# Современный способ (Git 2.23+)
git switch -c <имя-ветки>

Переключение между ветками

# Классический способ
git checkout <имя-ветки>

# Современный способ (только для переключения)
git switch <имя-ветки>

Переключение на предыдущую ветку

Быстрый способ вернуться назад:

git checkout -
# или
git switch -

Удаление веток

# Удалить локальную ветку (если она полностью слита)
git branch -d <имя-ветки>

# Принудительное удаление (если есть несохраненные изменения)
git branch -D <имя-ветки>

# Удалить удаленную ветку
git push origin --delete <имя-ветки>

Типичный рабочий процесс (Feature Branch Workflow)

  1. Создание ветки для новой задачи: bash git checkout main git pull origin main git checkout -b feature/login-form

  2. Разработка и коммиты: Делайте коммиты в своей ветке.

  3. Слияние с основной веткой: После завершения работы вернитесь в main и сделайте merge (см. раздел Слияние).

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

Хорошие практики именования: - feature/название-фичи — для новых функций. - bugfix/описание-бага — для исправлений ошибок. - hotfix/критическое-исправление — для срочных исправлений на проде. - docs/обновление-документации — для правки документации. - refactor/рефакторинг-модуля — для рефакторинга.

Используйте нижние дефисы (-) вместо пробелов или подчеркиваний.

Ветки и удаленный репозиторий

Отправка ветки на сервер

git push -u origin <имя-ветки>

Флаг -u связывает локальную ветку с удаленной, чтобы в будущем можно было писать просто git push.

Получение веток с сервера

# Скачать все ветки, но не переключаться
git fetch

# Скачать и переключиться на существующую удаленную ветку
git checkout <имя-ветки>
# Git автоматически создаст локальную ветку, отслеживающую удаленную

Назад: История → | Далее: Слияние (Merge) →