批量删除git本地分支和远程分支命令

1、按照关键词开头匹配删除远程分支

git branch -r | grep "origin/feature/develop-1"| sed 's/origin\///g' | xargs -n 1 git push origin --delete

git branch -r 列出所有远端分支。

grep "origin/feature/develop-1" 模糊匹配分支名称包含"origin/feature/develop-1"的远程分支

sed 's/origin\///g' 把匹配到的远程分支删除特定字符串"origin/"

xargs -n 1 git push origin --delete 执行删除匹配到的远程分支

git branch -r | grep "origin/feature/develop-1"| xargs -n 1 git push origin --delete"${branch#origin/}"

git branch -r 列出所有远端分支

grep "origin/feature/develop-1" 模糊匹配分支名称包含"origin/feature/develop-1"的远程分支

xargs -n 1 git push origin --delete 执行删除匹配到的远程分支

${branch#origin/} 去掉分支名前面的 origin/ 部分,以便正确指定要删除的分支。

2、排除特定分支删除所有远程分支分支

git branch -r | grep -v '\->' | grep -v 'origin/master' | grep -v 'origin/dev' | xargs -n 1 git push origin --delete"${branch#origin/}"

git branch -r 列出所有远端分支。

grep -v '\->' 忽略远端跟踪分支。

grep -v 'master' 和 grep -v 'dev' 忽略 master 和 dev 分支。

while read -r branch; do ... done 循环遍历每个分支并执行删除命令。

${branch#origin/} 去掉分支名前面的 origin/ 部分,以便正确指定要删除的分支。

注意:在执行批量删除操作之前,确保你已经确认要删除的分支,避免误删重要的分支。

3、批量删除本地分支

3.1 按照关键词开头匹配删除本地分支

git branch | grep "keyword" | xargs -n 1 git branch -D

3.2 按照指定的多分支进行删除

git branch -D branch1 branch2 branch3 (删除本地分支)

git push origin--delete branch1 branch2 branch3 (删除远程分支)

4、排除特定分支删除所有本地分支分支

git branch | grep -v '\->' | grep -v 'master' | grep -v 'dev' | xargs -n 1 git branch -D

相关推荐
正在学习前端的---小方同学3 小时前
Harbor部署教程
linux·运维
牛奔4 小时前
Docker Compose 两种安装与使用方式详解(适用于 Docker 19.03 版本)
运维·docker·云原生·容器·eureka
翼龙云_cloud4 小时前
阿里云渠道商:如何手动一键扩缩容ECS实例?
运维·服务器·阿里云·云计算
DX_水位流量监测6 小时前
大坝安全监测之渗流渗压位移监测设备技术解析
大数据·运维·服务器·网络·人工智能·安全
电商API&Tina6 小时前
京东 API 数据采集接口接入与行业分析
运维·服务器·网络·数据库·django·php
Mr_Xuhhh6 小时前
博客标题:深入理解Shell:从进程控制到自主实现一个微型Shell
linux·运维·服务器
f***24119 小时前
高效自动化管理临时文件的技术方案
运维·自动化
m0_738120729 小时前
应急响应——知攻善防靶场Linux-1详细应急过程
linux·运维·服务器·网络·web安全·ssh
obboda10 小时前
磁盘管理(MBR、LVM)
运维·5g
kylezhao201910 小时前
S7-1200 CPU 与 S7-200 SMART S7通信(S7-1200 作为服务器)
运维·服务器