我使用git branch -d myBranch
删除分支。但是,当我在掌握并尝试使用git checkout
签出新分支时,myBranch
仍会显示在标签自动填充中。
如何从myBranch
的标签自动填充中删除名称git checkout
?
答案 0 :(得分:127)
git fetch --prune --all
将此作为自己的答案发布,因为它是一行修复,但如果您投票,请务必投票支持@ twalberg的答案。
@ twalberg对git branch -a
的建议使我走上正轨;我的同事建议git fetch --prune --all
修剪所有遥控器上的所有死枝,这对于许多带有大量叉子的开发人员来说非常有用。
答案 1 :(得分:63)
一个可能的原因是,如果远程分支(例如origin/myBranch
)仍然存在,那么git checkout myBranch
将成为git checkout -b myBranch origin/myBranch
的替代。这是为了方便第一次签出远程分支的常见情况,创建一个同名的本地跟踪分支。
还有其他可能性,取决于您用于完成的具体内容,但这是我要检查的第一件事。如果您运行git branch -a
,并且列出了origin/myBranch
(或者origin
以外的远程{{1}},如果您有这样的话,那么这可能是罪魁祸首。