Удаляем ветку Git

04.09.2021

С целью обеспечения разработки различных версий ПО в Git реализованы ветки. Ветки используются для разработки новой функциональности в утилие. Если разработкой продукта занимается команда, каждый разработчик может работать над определенной функциональности в отдельной ветке.

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

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

Перед удалением ветки посмотрим, что мы имеем. Для просмотра локальных ветков используйте команду в папке с репозиторием:

$ git branch

Команда выводит список локальных веток, зеленым цветом и звездочкой выделяется текущая ветка. Чтобы удалить ветку, необходимо использовать ту же команду branch с опцией -d. Например, для того чтобы удалить ветку feature/somefeature1 выполните такую команду

$ git branch -d feature/somefeature1

Как вариант:

$ git branch --delete feature/somefeature1

Если в этой ветке есть не зафиксированные изменения или коммиты, не отправленные на сервер, то программа может отказаться её удалять. Для того чтобы всё же удалить такую ветку используйте опцию -D:

git branch -D feature/somefeature1

И еще способ:

git branch --delete --force feature/somefeature1

Ветка Git удалена, если после этого вы снова проверите список локальных веток, то этой ветки там больше не будет:

Дальше разберемся как выполняется удаление удалённой ветки Git. В этом случае ветка удалилась только локально, но если она была уже отправлена в удалённый репозиторий, то там она всё ещё есть.

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

Какк удалить ветку из удаленного репозитория git? В первую очередь необходимо получить список веток и все обновления из добавленных удалённых репозиториев. Выполняем:

git pull

Для того чтобы посмотреть удалённые ветки необходимо выполнить такую команду в папке с репозиторием git:

$ git branch -r

Здесь находятся отмеченные красным ветки и перед именем каждой из них указан источник, в котором есть эта ветка. В данном случае это origin. Для удаления удалённой ветки используется команда push с опцией --delete, например, для той же feature/somefeature1команда будет выглядеть вот так:

git push origin --delete feature/somefeature1

Теперь в репозитории такая ветка отсутствует.

Команды, позволяющие удалить удаленную ветку git есть и упрощённый синтаксис. Вместо опции --delete укажите перед именем ветки двоеточие. Например:

git push origin :feature/somefeature1

Такая команда тоже будет работать. Если вы хотите удалить все удалённые ветки, которых нет локально, используйте команду:

git push --prune origin

На этом все. Мы рассмотрели как удалить ветку Git, которая размещена удалённо или локально. Сделать это не так сложно. Если вы будете использовать графические клиенты, то всё станет ещё проще.