假设我的存储库中有一个名为 coolbranch
的分支。
现在,我决定删除它(远程和本地):
git push origin :coolbranch
git branch -D coolbranch
太棒了! 现在分支真的被删除了。
但是当我运行的时候
git branch -a
我仍然得到:
remotes/origin/coolbranch
需要注意的是,当我克隆一个新的存储库时,一切都很好并且 git branch -a
没有显示分支。
我想知道 - 有没有办法在不克隆新实例的情况下从 branch -a
列表中删除分支?
最佳答案
git remote prune origin
将删除所有这些陈旧的分支。在大多数情况下,这可能是您想要的,但是如果您只想删除那个特定的远程跟踪分支,您应该这样做:
git branch -d -r origin/coolbranch
(-r
很容易忘记...)
-r
在这种情况下将“列出或删除(如果与 -d
一起使用)远程跟踪分支。”根据此处找到的 Git 文档:https://git-scm.com/docs/git-branch
关于Git 远程分支被删除,但它仍然出现在 'branch -a',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5094293/