Git Branch

Содержание
branch: Ветки
Создать новую ветку
checkout: Сменить ветку
-d: Удалить ветку
-m: Переименовать ветку
Обновить ветку из удалённого репозитория
clone -b: Клонировать только определённую ветку
Создать ветку от другой ветки
Другие статьи про Git

Ветки (Branches)

Посмотреть какая ветка сейчас активна

$ git branch

* master

Прежде чем создавать новую ветку нужно убедиться в том, что в старой нет несохранённых изменений.

$ git status

On branch master
nothing to commit, working tree clean

Также если вы, например, находитесь в master сперва сделайте

git pull

Чтобы новая ветка отпочковалась от максимально свежей версии master

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

Чтобы создать новую ветку выполните

$ git branch new-branch

Проверить появилась ли она в списке

$ git branch

* master
new-branch

Перейти в новую ветку

$ git checkout new-branch

Switched to branch 'new-branch'

Вернуться в ветку master

$ git checkout master

Если Вы сделали в ветке new-branch какие-то изменения, закоммитили из и теперь хотите, добавить эти изменения в ветку master нужно выполнить команду merge

$ git merge new-branch

Updating f521fc5..fe7276a
Fast-forward
index.html | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Создать новую ветку и сразу перейти в неё можно одной командой

$ git checkout -b new-branch-2

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

Удалить локальную ветку

git branch -d branchName

Deleted branch branchName (was 1ce400ce6).

Удалить внешнюю ветку

git push origin --delete remoteBranchName

Переименовать ветку

Чтобы переименовать ветку зайдите в неё, убедитесь, что вы в корне проекта и выполните

git branch -m newName

Вместо newName подставьте нужное вам имя.

Обновить ветку из удалённого репозитория

Если ваша локальная ветка отстала от удалённого репозитория и нужно обновить - выполните git pull.

git pull origin ИМЯ_ВЕТКИ

Это может произойти, если вы создали ветку на одном компьютере, сделали push в удалённый репозиторий (github, gitlab…) затем перешли в эту ветку на втором компьютере сделали push оттуда и вернулись на первый компьютер. В локальной ветке последних коммитов нет, поэтому нужно скачать их следующей командой.

git pull origin topic/qa/HH-2398_update_malaga_hotels

From gitlab.heihei.com:HEI/HEI * branch topic/qa/HH-2398_update_malaga_hotels -> FETCH_HEAD Updating 095a284bd..43cd9724d Fast-forward src/countries/spain/malaga/index.php | 26 ++++++++++++++++++++++---- src/countries/spain/costa-del-sol/index.php | 24 ++++++++++++++++++++---- 2 files changed, 42 insertions(+), 8 deletions(-)

Клонировать только определённую ветку

Чтобы клонировать только определённую ветку нужно указать её с помощью опции -b

git clone -b BranchName git@github.com:CompanyName/RepoName.git

Создать ветку от другой ветки

Если нужно создать ответвление не от главной ветки, а от какой-то другой её нужно указать после названия новой ветки.

Например создать ветку child от существующей ветки parent можно следуюущим образом

git checkout -b child parent

Похожие статьи
Git
Установка
Основы
branch: Ветки
Перейти с HTTPS на SSH
.gitignore
Необходимые Bash команды
Remote
GitHub
GitLab
Ошибки
Git Bash
Работа с API GitHub