You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何删除特定目录下的Git分支?

清理已合并的feature/fix类型本地及远程追踪分支

一、清理本地已合并分支

  1. 先切换到你的主分支(比如main或master)并拉取最新代码:
    git checkout main
    git pull
    
  2. 筛选并删除所有已合并到当前主分支的feature/或fix/前缀本地分支:
    git branch --merged | grep -E '^(feature|fix)/' | xargs git branch -d
    
    • 建议先单独运行git branch --merged | grep -E '^(feature|fix)/',确认列出的分支都是你要删除的,避免误删。
    • 如果遇到分支未完全合并但你确定要删除的情况,把-d换成-D强制删除(谨慎使用)。

二、清理远程追踪分支(避免git branch -r看到已废弃的分支)

  1. 自动同步远程仓库状态,清理本地的无效远程追踪副本(移除那些远程仓库已经删除的分支):
    git fetch --prune
    
  2. 若需手动删除特定前缀的远程追踪分支(比如远程分支仍存在但你要清除本地追踪记录):
    git branch -r --merged | grep -E 'origin/(feature|fix)/' | xargs git branch -dr
    
    • 这个命令仅删除本地的远程追踪分支,不会影响远程仓库。如果要同时删除远程仓库的对应分支,执行:
      git branch -r --merged | grep -E 'origin/(feature|fix)/' | sed 's/origin\///' | xargs git push origin --delete
      

注意事项

  • 替换main为你实际使用的主分支名称(比如master)。
  • 根据你的分支命名规则调整grep的匹配规则,比如分支是feature-xxx格式,就把^(feature|fix)/改成(feature|fix)-。

内容的提问来源于stack exchange,提问作者Dmee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 23:15:51