LinuxCommandLibrary

gitui

Visualize and manage Git repositories in terminal

TLDR

Start gitui for the repository in the current directory

$ gitui
copy

Specify the filename of the color theme loaded from the config directory (defaults to theme.ron)
$ gitui [[-t|--theme]] [theme2.ron]
copy

Store logging output into a specific file
$ gitui --logfile [path/to/file]
copy

Inspect a specific file inside the repository in the current directory
$ gitui [[-f|--file]] [path/to/file]
copy

Use notify-based file system watcher instead of tick-based update
$ gitui --watcher
copy

Generate a bug report
$ gitui --bugreport
copy

Use a specific Git directory
$ gitui [[-d|--directory]] [path/to/directory]
copy

Use a specific working directory
$ gitui [[-w|--workdir]] [path/to/directory]
copy

SYNOPSIS

gitui [OPTIONS] [<dir>]

PARAMETERS

-h, --help
    Print help information

-V, --version
    Print version information

<dir>
    Path to Git repository directory (defaults to current)

DESCRIPTION

gitui is a terminal-based user interface (TUI) for Git repositories, designed for speed and efficiency. Written in Rust, it provides an intuitive, keyboard-driven interface to perform common Git operations without leaving the terminal.

Key features include:
File panel: Stage, unstage, or discard changes with hunk-level granularity.
Commit graph: Visualize branches and commits interactively.
Log viewer: Browse commit history with diff previews.
Stash and submodules support.
• Mouse support for easier navigation.

Unlike command-line Git, gitui offers a visual overview of your repo state, reducing context switches. It's lightweight, dependency-free beyond Git itself, and renders instantly even on large repos. Ideal for developers preferring terminal workflows over GUIs like GitHub Desktop or IDE integrations.

Launch it in a Git repo with gitui; specify a directory optionally. Customize via ~/.config/gitui/key_bindings.ron or theme.ron.

CAVEATS

Requires Git ≥ 2.18 installed. Best with terminals supporting true color and mouse (e.g., Alacritty, Kitty). No built-in search across all panels; large repos may need scrolling.

INSTALLATION

Via Cargo: cargo install gitui. Binaries on GitHub releases for Linux/macOS/Windows. Arch: pacman -S gitui; other distros via AUR/Flatpak.

KEYBINDINGS

Customizable. Defaults: Enter to select/open, Space to stage, c for commit, ?/F1 for help. See gitui --help or in-app.

HISTORY

Developed by Daniel G. Taylor (extrawurst) starting 2020. First stable release 0.10 in 2021. Gained popularity via Rust ecosystem; v0.25+ added async Rust for better perf. Actively maintained on GitHub with 40k+ stars.

SEE ALSO

git(1), tig(1), lazygit(1)

Copied to clipboard