今天在处理gitlab上面冗余的合并之后没用的分支,清了一大堆之后。看起来很舒服了,然后回本地项目git branch -r之后发现那些个分支还是在,很奇怪,git branch -r不就是查看远程有哪些分支吗?然后git fetch之后还是没变,很怪。
后来用IDEA fetch了一下 ,终于那些个分支全都没了。查看日志发现执行了git fetch origin --recurse-submodules=no --progress --prune这个命令
查了一下,原来git branch -r 不会主动更新远程分支,如果远程分支被删除仍然回显示远程分支,本地的远程分支信息没有更新同步。
有两种方式可以处理
1. git remote update origin --prune 更新远程分支信息
或者
2.git config --global fetch.prune true 这样配置一下以后fetch 或者pull的时候会自动删除本地不存在的远程分支
新单词:prune 修剪的意思
标签:git,--,远程,branch,fetch,分支 From: https://www.cnblogs.com/1521681359qqcom/p/17988663