Git удалить удаленную ветку не работает: ветка не найдена

Я пытаюсь удалить удаленную ветвь в git, я сделал:

git branch -r
...
origin/master
origin/dev
origin/branch_to_delete

теперь я пытаюсь удалить origin/branch_to_delete:

git branch -d origin/branch_to_delete
error: branch 'origin/branch_to_delete' not found 

Я сделал:

git fetch --all

и попробовал снова, ту же ошибку. Я попытался с -D, но с той же ошибкой.

но ветка есть, я вижу это в github.com. Что делать?

Ответ 1

Согласно этот пост:

Удаление также довольно простая задача (несмотря на то, что она немного напоминает kludgy):

git push origin :newfeature

Это приведет к удалению ветки newfeature на пуле источника, но вам все равно нужно удалить ветвь локально с помощью git branch -d newfeature.

Таким образом, полученная вами ошибка просто означает, что у вас нет локальной копии этой ветки, поэтому вы можете ее игнорировать. Затем удалите удаленную копию:

git push origin :branch_to_delete

Ответ 2

Чтобы удалить удаленную ветку, введите команду:

$ git push origin --delete [branch]

Похоже, кто-то забыл "--delete" в одном из предыдущих ответов.