An interactive CLI for git that uses fzf for fuzzy searching and visual selection of branches, commits, diffs, and status.
git-fuzzy is a command-line tool that provides an interactive interface to git using fzf for fuzzy searching. It allows developers to visually manage git operations like staging changes, browsing commit logs, viewing diffs, and handling branches through a menu-driven system. It solves the problem of memorizing complex git commands by offering an intuitive, searchable interface.
Developers and DevOps engineers who frequently use git in the terminal and want a faster, more visual way to manage repositories without leaving the CLI.
It combines the power of git with the fuzzy-finding capabilities of fzf, offering a seamless, keyboard-driven workflow that reduces manual command typing and enhances productivity for complex git operations.
interactive git with the help of fzf
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a visual interface for staging, unstaging, and discarding changes using cursor selection, as shown in the status.gif demo.
Leverages fzf to search commit logs, diffs, branches, and stashes with instant previews, reducing the need to memorize complex git commands.
Configurable via environment variables for diff tools, keybindings, layouts, and git command defaults, detailed in the Customizing section.
Enables searching within diffs with highlighted results and interactive navigation, demonstrated in the diff.gif.
Requires fzf version 0.21.0 or higher installed and configured, adding an external dependency that may not be available in all environments.
Setup involves shell scripting, environment variables, and bc calculations, which can be error-prone, as warned in the FOOTGUN section about branch defaults.
The README admits that the UI flashes due to fzf's alternate screen switching, which can disrupt the user experience.