С целью обеспечения разработки различных версий ПО здесь реализованы ветки. Они используются для разработки новой функциональности в утилите. Если разработкой продукта занимается команда, каждый разработчик может работать над определенной функциональности в отдельной ветке.
Перед удалением ветки посмотрим, что мы имеем. Для просмотра локальных используйте команду в папке с репозиторием:
$ 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 pull
Для того чтобы посмотреть удалённые необходимо выполнить такую команду в папке с репозиторием git:
$ git branch -r
Здесь находятся отмеченные красным и перед именем каждой из них указан источник, в котором она есть. В данном случае это origin. Для удаления удалённой используется команда push с опцией --delete, например, для той же feature/somefeature1команда будет выглядеть вот так:
$ git push origin --delete feature/somefeature1
Теперь в репозитории она отсутствует.
Команды, позволяющие удалить удаленную есть, а еще упрощённый синтаксис. Вместо опции --delete укажите перед именем двоеточие. Например:
$ git push origin :feature/somefeature1
Такая команда тоже будет работать. Если вы хотите удалить все удалённые ветки, которых нет локально, используйте команду:
$ git push --prune origin