Новая ветка в Git создаётся и активируется командой git checkout -b название-ветки, которая одновременно создаёт ветку и переключает на неё рабочую директорию. Альтернативно можно использовать современную команду git switch -c название-ветки, которая выполняет то же действие с более интуитивным синтаксисом.
Зачем это нужно
- Ветки позволяют разработчикам работать над разными функциями или исправлениями одновременно без конфликтов в основной коде
- Создание отдельной ветки изолирует экспериментальный код от стабильной версии в ветке
main - При работе в команде каждый разработчик может иметь свою ветку, что облегчает код-ревью и слияние изменений
- История коммитов в разных ветках остаётся независимой, позволяя откатиться к стабильной версии в любой момент
- Ветки упрощают управление версиями и релизами, позволяя параллельно развивать несколько линий функциональности
- При обнаружении критической ошибки можно быстро переключиться на основную ветку и создать hotfix без потери работы в текущей ветке
Пошаговая инструкция
- Откройте терминал и перейдите в директорию вашего Git-проекта командой
cd путь/к/проекту - Проверьте текущую ветку командой
git branch— активная ветка будет отмечена звёздочкой* - Убедитесь, что все локальные изменения сохранены в коммитах командой
git status - Если есть несохранённые изменения, создайте коммит командой
git commit -m "Описание изменений"или спрячьте их командойgit stash - Создайте новую ветку и переключитесь на неё одной командой:
git checkout -b название-новой-ветки(например,git checkout -b feature/авторизация) - Альтернативно используйте современный синтаксис:
git switch -c название-новой-ветки - Проверьте, что переключение произошло успешно, командой
git branch— новая ветка должна быть отмечена звёздочкой - Проверьте полное имя текущей ветки командой
git branch --show-current - Убедитесь, что вы находитесь на правильной ветке, посмотрев на приглашение терминала (если он настроен на отображение ветки)
- Если нужно создать ветку от конкретного коммита или ветки, используйте:
git checkout -b новая-ветка исходная-ветка(например,git checkout -b develop main) - Начните работу: создавайте или редактируйте файлы в новой ветке
- Регулярно сохраняйте изменения коммитами:
git add .иgit commit -m "Сообщение коммита" - Когда работа завершена, отправьте ветку на GitHub командой
git push -u origin название-ветки - Для переключения между уже созданными ветками используйте команду
git checkout название-веткиилиgit switch название-ветки - Для просмотра всех веток (локальных и удалённых) выполните
git branch -a
Часто задаваемые вопросы
Какая разница между git checkout -b и git switch -c? Обе команды создают и переключают на новую ветку; git switch — более новый и интуитивный синтаксис, появившийся в Git 2.23, тогда как git checkout — классический вариант, работающий в старых версиях Git.
Как переключиться на существующую ветку без создания новой? Используйте команду git checkout название-ветки или современный вариант git switch название-ветки без флага -b или -c.
Что произойдёт, если я создам новую ветку с тем же названием, что и удалённая ветка на GitHub? Git автоматически свяжет локальную ветку с удалённой; при отправке командой git push без флага -u изменения загрузятся в существующую удалённую ветку.