Minha situação é essa ... alguém que trabalha no mesmo repositório excluiu um ramo de seu repositório local e remoto ...
A maioria das pessoas que perguntou sobre esse tipo de problema no Stack Overflow ou em outros sites ainda tem o problema de ramificações em sua lista de ramificações de rastreamento remoto git branch -a
na parte inferior:
* master
develop
feature_blah
remotes/origin/master
remotes/origin/develop
remotes/origin/feature_blah
remotes/origin/random_branch_I_want_deleted
No entanto, na minha situação, o ramo que não deveria estar lá é local:
* master
develop
feature_blah
random_branch_I_want_deleted
remotes/origin/master
remotes/origin/develop
remotes/origin/feature_blah
Quando eu faço qualquer um dos seguintes, ele não é removido localmente:
$ git prune
Eu também tentei:
$ git remote prune origin
$ git fetch --prune
Informações mais úteis: quando eu verifico, git remote show origin
é assim que fica:
* remote origin
Fetch URL: utilities:homeconnections_ui.git
Push URL: utilities:homeconnections_ui.git
HEAD branch: master
Remote branches:
master tracked
develop tracked
feature_blah tracked
other123 tracked
other444 tracked
other999 tracked
Local branches configured for 'git pull':
develop merges with remote develop
feature_blah merges with remote other999
master merges with remote master
random_branch_I_want_deleted merges with remote random_branch_I_want_deleted
Local refs configured for 'git push':
develop pushes to develop (local out of date)
master pushes to master (up to date)
feature_blah pushes to feature_blah(up to date)
Observe que está apenas na seção intitulada Local branches configured for 'git pull':
Por quê?
x/y
): foi corrigido (ver minha resposta abaixo )
git branch -d the_local_branch