g
1

git-delete-merged-branches:清理已合并 Git 分支的命令行工具

git-delete-merged-branches 是一个用于整理 Git 仓库的命令行工具,可识别多种已合并分支,并在确认后删除本地及远程分支,适合需要定期维护分支环境的开发者。

链接直达

git-delete-merged-branches:清理已合并 Git 分支的命令行工具

原站网页截图,页面可能随时间更新。

git-delete-merged-branches 面向 Git 仓库维护工作,帮助用户找出已经合并的分支并进行清理。它支持同时处理本地分支和远程分支,也能应对不同的合并方式与多个发布分支场景。执行删除前,工具会展示待处理分支并要求确认,用户可以先查看预期变更,再决定是否继续。

用途与适用场景

该工具主要用于清理 Git 仓库中已经完成合并、后续不再需要的分支,减少长期积累的本地和远程分支。它适合个人项目、团队仓库以及需要维护多个发布分支的开发流程。对于同时使用 master、dev、staging 等分支的仓库,可以设置为仅清理已经合并到全部指定分支的分支。工具不依赖特定代码托管平台,可用于 GitHub、GitLab、Gitea 以及其他 Git 托管服务。

准备与上手

使用前需要准备 Git 仓库环境,并安装 Python 版本不低于 3.10 的 git-delete-merged-branches。官方提供 pip 安装方式,也列出了 Arch Linux、Debian GNU/Linux、Gentoo Linux、Homebrew、MacPorts、NixOS、Ubuntu 和 Void Linux 的安装方式。进入目标仓库后,运行 git-delete-merged-branches 即可开始检查。工具会先询问是否执行远程更新与清理,并根据仓库状态询问是否执行快进式拉取,随后列出准备删除的本地和远程分支。

主要功能

工具能够删除本地分支和远程分支,并识别多种实际合并形式,包括普通合并、变基合并、压缩合并以及单个或一段范围内的 cherry-pick。压缩合并识别需要使用 --effort=3。它会利用 git cherry 判断相关提交状态,并支持包含多个发布分支的工作流。交互式配置会在操作前展示远程、本地分支以及拟删除的分支数量,用户可逐步决定是否继续。

安全控制与操作提示

删除操作默认需要明确确认,直接按 Enter 或 Return 会按默认的否处理;也可以使用 --yes 跳过确认。使用 --dry-run 可以预览工具将要进行的变更,使用 --verbose 可以查看执行的 Git 命令。删除远程分支时,工具使用 git push 配合 --force-with-lease,以避免本地与服务器对分支状态理解不一致时直接删除。对于包含上游远程和派生仓库远程的 fork,发布分支应跟踪正确的远程分支。

限制与使用注意

这是一个面向开发者的命令行工具,使用时需要理解 Git 分支、远程仓库和合并状态。删除分支属于不可轻率执行的操作,即使工具提供确认、预览和安全推送机制,也应在确认列表后再继续。系统中如果同时安装了 git-extras,可能出现同名命令冲突;此时可改用 python3 -m git_delete_merged_branches 或 git-dmb,也可以检查 PATH 中的命令解析顺序。当前项目标注为 Beta,并采用 GPLv3 或更高版本许可证。

该工具还依赖本机已有的 Git 仓库及远程配置;不同仓库的跟踪关系会影响候选分支判断。官方特别提醒,fork 场景下应确保 release 分支跟踪正确的上游远程,并考虑及时更新派生仓库的远程 master 分支。

如何避免同名命令冲突?

可以运行 python3 -m git_delete_merged_branches,或使用 git-dmb;也可以调整 PATH 顺序,或者使用命令的绝对路径。

能否先查看将要发生的变更?

可以使用 --dry-run 预览工具准备进行的变更;使用 --verbose 可查看执行的 Git 命令。


访问软件官网 · 查看资料来源

相关推荐

N

Neovim 是一款基于 Vim 的文本编辑器,强调可扩展性、易用性和跨环境使用。它支持 Lua 插件、Vimscript、LSP、Tree-sitter、终端,以及通过 RPC 连接的图形界面和其他扩展。

D

DBeaver Community 是一款免费、开源的通用数据库管理工具,适合个人项目。它支持连接和探索 MySQL、MariaDB、PostgreSQL、SQLite、SQL Server、Apache 家族等关系型数据库,并提供数据编辑、SQL 编辑、元数据管理、任务管理和数据库维护工具。

w

watchexec 是一个命令行工具,用于监视当前目录中的文件变化,并在变化发生时执行指定命令。它适合自动启动构建流程、重启开发服务器、检测活动,减少反复手动按回车执行命令的操作。

T

Tracely-ai 将 AI Agent 的生产追踪、质量评估、故障聚类和回归测试连接起来。它可以接收 Agent trace,对对话、运行或单个 span 进行评估,将失败运行冻结为可重放测试,并在 Pull Request 中发现回归时阻止合并。

s

simutil 是面向移动开发和测试的设备工具集,提供桌面应用、TUI 与 CLI。它可启动、关闭、连接、投屏、控制、录制安卓和苹果设备,并支持批量场景执行、日志查看、插件扩展及脚本自动化。

评论

暂无评论,来抢沙发~