Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Robotic Tooling
  3. git-fuzzy

git-fuzzy

MITShell

An interactive CLI for git that uses fzf for fuzzy searching and visual selection of branches, commits, diffs, and status.

GitHubGitHub
2.4k stars44 forks0 contributors

What is git-fuzzy?

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.

Target Audience

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.

Value Proposition

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.

Overview

interactive git with the help of fzf

Use Cases

Best For

  • Visually staging and unstaging changes in large codebases
  • Searching through git history with instant diff previews
  • Managing multiple branches with fuzzy search and quick checkout
  • Exploring diffs with highlighted search terms and interactive navigation
  • Handling git stashes and reflogs through a searchable interface
  • Integrating GitHub pull request workflows directly in the terminal

Not Ideal For

  • CI/CD pipelines requiring non-interactive, headless git operations
  • Users who prefer vanilla git with minimal third-party dependencies
  • Teams with strict git command standardization and no tolerance for UI-driven workflows

Pros & Cons

Pros

Interactive Status Management

Provides a visual interface for staging, unstaging, and discarding changes using cursor selection, as shown in the status.gif demo.

Fuzzy Search Integration

Leverages fzf to search commit logs, diffs, branches, and stashes with instant previews, reducing the need to memorize complex git commands.

Extensive Customization

Configurable via environment variables for diff tools, keybindings, layouts, and git command defaults, detailed in the Customizing section.

Diff Exploration with Highlighting

Enables searching within diffs with highlighted results and interactive navigation, demonstrated in the diff.gif.

Cons

Dependency on fzf

Requires fzf version 0.21.0 or higher installed and configured, adding an external dependency that may not be available in all environments.

Complex Configuration

Setup involves shell scripting, environment variables, and bc calculations, which can be error-prone, as warned in the FOOTGUN section about branch defaults.

UI Flashing Issues

The README admits that the UI flashes due to fzf's alternate screen switching, which can disrupt the user experience.

Frequently Asked Questions

Quick Stats

Stars2,433
Forks44
Contributors0
Open Issues1
Last commit2 months ago
CreatedSince 2020

Tags

#version-control#developer-tools#productivity#terminal#fzf#git#fuzzy-search#bash#cli#zsh

Built With

B
Bash
f
fzf

Included in

ZSH Plugins17.6kRobotic Tooling3.8k
Auto-fetched 8 hours ago

Related Projects

lazygitlazygit

simple terminal UI for git commands

Stars82,121
Forks3,032
Last commit19 hours ago
divedive

A tool for exploring each layer in a docker image

Stars54,539
Forks1,998
Last commit8 months ago
zoxidezoxide

A smarter cd command. Supports all major shells.

Stars39,238
Forks891
Last commit12 hours ago
zsh-autosuggestionszsh-autosuggestions

Fish-like autosuggestions for zsh

Stars36,048
Forks1,940
Last commit1 year ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub