天天看点

git 清除无效分支

现在 我们所有的分支是这样的

$ git branch -a
  feature/2018-10-17-××××
* feature/2018-11-09-××××
  master
  remotes/origin/feature/2018-07-09-××××
  remotes/origin/hotfix/2018-09-25-××××
  remotes/origin/hotfix/2018-09-26-××××
  remotes/origin/release/2018-10-17-××××
  ……
           

本地和远程的分支特别多

假如你的远程版本库名是 origin,则使用如下命令先查看哪些分支需要清理:

$ git remote prune origin --dry-run
Pruning origin
URL: git@×.×.×.×:×/×.git
 * [would prune] origin/feature/2018-09-18-××××
 * [would prune] origin/release/2018-10-17-××××
 * [would prune] origin/release/2018-06-12-××××
    ……
           

一看 ,许多分支已经需要修剪(清除), 那么接着就可以执行清理:

$ git remote prune origin
Pruning origin
URL: git@×.×.×.×:×/×.git
 * [pruned] origin/feature/2018-09-18-××××
 * [pruned] origin/feature/2018-10-17-××××
 * [pruned] origin/release/2018-06-12-××××
   ……
           

然后再查看分支:

$ git branch -a
  feature/2018-10-17-××××
* feature/2018-11-09-××××
  remotes/origin/develop
  remotes/origin/feature/2018-11-19-××××
  remotes/origin/feature/2018-11-21-××××
  remotes/origin/master
           

远程分支已经清理干净了,但是本地还有链接远程的分支没有删除掉的,那么就可以:

git branch -D feature_name1 feature_name2 feature_name3
           

这样 再git branch 的时候 就一身轻松了