git批量删除分支和标签

前端这点事 6 0

批量删除本地分支

 
git branch -a | grep -v -E 'master|develop' | xargs git branch -D

批量删除远程分支

 
git branch -r| grep -v -E 'master|develop' | sed 's/origin\///g' | xargs -I {} git push origin :{}

如果有些分支无法删除,是因为远程分支的缓存问题,可以使用git remote prune

批量删除本地tag

git tag | xargs -I {} git tag -d {}

 

批量删除远程tag

git tag | xargs -I {} git push origin :refs/tags/{}

 

用到命令说明

grep -v -E 排除master 和 develop

-v 排除

-E 使用正则表达式

xargs 将前面的值作为参数传入 git branch -D 后面

-I {} 使用占位符 来构造 后面的命令

标签: 开发工具

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~