批量删除本地分支

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 {} 使用占位符 来构造 后面的命令

相关文章:

  • 2022-12-23
  • 2021-11-06
  • 2021-08-18
猜你喜欢
  • 2022-12-23
  • 2021-06-16
  • 2021-08-08
  • 2021-11-01
  • 2021-04-17
相关资源
相似解决方案