批量删除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

相关推荐
仙柒4152 小时前
kubernetes 控制器 Dockerfile
运维·容器·kubernetes
hj2862518 小时前
Linux 磁盘管理 + 文件系统 + LVM 笔记整理
linux·运维
Bert.Cai10 小时前
Linux let命令详解
linux·运维·服务器
枕星而眠10 小时前
Linux 线程:原理、属性、实战与面试避坑
linux·运维·c语言·面试
晚风予卿云月10 小时前
【Linux】环境变量概念、作用、配置与修改详解
linux·运维·服务器·环境变量
~黄夫人~10 小时前
零基础速通|Windows&Linux 常用命令行对照表大全
linux·运维·windows·笔记·备忘录·整理表格
benjiangliu10 小时前
LINUX系统-17-EXT系列文件系统(二)
linux·运维·服务器
杨云龙UP10 小时前
Linux 根分区被日志吃满?一次 58G Broker 日志清理实战_2026-05-20
linux·运维·服务器·数据库·hdfs·apache
络合白泽11 小时前
Debian 13 + NVIDIA Optimus 笔记本:从零配置 Wayland Explicit Sync 完整指南
运维·debian
珠海西格电力11 小时前
零碳园区的碳排放指标计算的实操步骤
大数据·运维·人工智能·物联网·能源