我不记得导致我当前场景的事件,但它发生了类似的事情:
- 有一个名为
2-dev-inprogress
的分支 - 使用以下方法将
2-dev-inprogress
的分支名称更改为2-dev-wip
:-
git branch -mv 2-dev-inprogress 2-dev-wip
-
我的问题是,当我在另一个分支中并想使用制表符补全(像往常一样)结帐2-dev-wip
时,它只会完成2-dev-
,并给了我两个选项:
-
2-dev-inprogress
-
2-dev-wip
有人知道一些特定的手术来从选项卡完成历史记录中删除该2-dev-inprogress
分支吗?到目前为止,我唯一尝试的是在我的.bash_profile中注释掉source ~/.git-completion.bash
并重新启动 iTerm,但没有运气。我也窥探了.git目录,但想到我会捏造一些无法修复的东西,我感到害怕。
接受的答案是有道理的,但在我的情况下不起作用。 如果远程分支不再存在,则可能需要另外修剪。 我使用Seth Robertson的建议来清理我的系统并同时摆脱许多分支:git remote | xargs -n1 git remote prune
。 如果其他人删除了远程分支,或者在我的情况下,如果您从另一台计算机上删除了远程分支,则可能会发生这种情况。
你还有一个名为 2-dev-inprogress
的远程分支吗? 如果是这样,您必须删除此分支或通过注释掉/etc/bash_completion.d/git 中的远程检查来阻止远程分支的 git 完成