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

相关推荐
陈大大陈25 分钟前
自制简易 Shell:像搭建积木小屋一样打造命令交互小天地
linux·运维·服务器·c++·tcp/ip·microsoft·交互
kfhj5 小时前
负载均衡是什么,Kubernetes如何自动实现负载均衡
运维·kubernetes·负载均衡
MarkHD7 小时前
第八天 - paramiko/ssh模块 - 远程服务器管理 - 练习:批量服务器命令执行工具
运维·服务器·ssh
GalaxyPokemon9 小时前
MySQL基础 [一] - Ubuntu版本安装
linux·运维·ubuntu
柳鲲鹏9 小时前
UBUNTU编译datalink
linux·运维·ubuntu
三阶码叟9 小时前
centos7 yum install docker 安装错误
运维·docker·容器
CaliXz10 小时前
野草云防火墙风险分析及 Docker 使用注意事项
运维·docker·容器
计算机学无涯10 小时前
Docker 命令简写配置
运维·docker·容器
kk小源10 小时前
Docker常用操作教程
运维·docker·容器
Y淑滢潇潇11 小时前
RHCSA Linux 系统创建文件
linux·运维·服务器