A command-line tool to interactively review and delete local Git branches with detailed commit information.
git curate is a command-line tool that helps developers clean up local Git branches by interactively reviewing each branch with detailed commit information and deciding whether to delete or keep it. It solves the problem of repository clutter by providing a guided workflow that shows last commit details, merge status, and upstream tracking status before making deletion decisions.
Git users who work with multiple feature branches and need to regularly prune their local repositories to maintain clarity and organization.
Developers choose git curate because it offers a safer, more informative alternative to manual `git branch -D` commands by presenting all relevant context before deletion and protecting current worktrees automatically.
✂️ Peruse and delete git branches ergonomically
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Shows last commit date, hash, author, subject, merge status, and upstream status for each branch, as highlighted in the README's motivation section, providing full context before deletion.
Allows users to mark branches for deletion or keep them with options to end or abort, preventing accidental deletions as described in the usage section, ensuring a guided process.
Supports both interactive stepping and non-interactive listing with --list flag, and filtering with --merged/--no-merged options, offering versatility for different cleanup scenarios.
Excludes currently checked-out branches and branches in other worktrees from deletion, as noted in the usage section, safeguarding active work without manual intervention.
Requires Ruby 3.1.0+ and compilation of libgit2 via rugged, which can fail if system prerequisites like cmake are missing, adding installation complexity as admitted in the troubleshooting notes.
Does not run `git fetch` before showing upstream status, so users must manually fetch to get latest remote information, limiting accuracy unless extra steps are taken, as warned in the README.
Limited to managing local branches; it doesn't handle remote branch cleanup or integrate with broader Git workflows, which might require additional tools for full repository management.