因为项目管理情况,针对需求单独拉出来的分支,会在上线完成后,并入主分支并清理对应分支。
这就会导致本地依然存在相应的分支,长此以往,本地会有很多分支已经没有对应远程仓库。
如果切换到该分支上再pull新内容会报错,尤其是在IDE中,为了简便操作,点击一个按钮会获取多个服务、多个模块的远程更新,此时往往会因为某些分支远端不存在而报错。看起来非常的难受,尤其是强迫症看着本地一大堆分支会很难受。
PS:本地分支不要清理的太早,万一上线过程中远端有些操作失误将分支删除了,还可以把本地分支push上去。如果本地也删了就不好找回了。
以下几个命令:
git branch -v
可以看到当前项目的分支情况,包含远端状态。记得在此之前先 git fetch 获取最新。
其中标记为 [gone] 的就是远端已经不存在对应的分支了。
然后可以通过以下命令删除对应的本地分支。
git branch -d xxx_branch_name
另外一种情况,是删除“远端已经不存在” ,但本地仍然存在的“远端分支”(不是本地分支)
git remote prune origin
或者在fetch的时候直接带上清理参数:
git fetch -p # -p 即 --prune
版权归原作者 绝版灬思念 所有, 如有侵权,请联系我们删除。