lazygit vs gitui
lazygit (Go) vs gitui (Rust): two MIT-licensed terminal Git UIs compared on interface, speed on large repos, hooks and install options.
Updated
short verdict
Pick lazygit if you want a panel-based Git UI that also takes mouse input and covers merging, rebasing and merge-conflict resolution. Pick gitui if you work in very large repositories, where its published Linux kernel benchmark shows it parsing history faster and with less memory, or if you want customizable themes and key bindings and installs via Cargo or pacman.
lazygit and gitui are both MIT-licensed terminal interfaces for Git that replace typed commands with panels and keystrokes for staging, committing, branching and stashing. They differ in implementation language (Go versus Rust), input model, and what the projects document about performance and extras such as hooks and signing.
this page is for
- Developers choosing a terminal Git UI for daily commits and branching
- Teams working in large repositories where history parsing time matters
- Readers who want to know whether mouse support or keyboard-only control matters to them
Better pick when you want panels for status, files, commits and branches with keyboard and mouse input, including merge and rebase flows.
best for
- Developers who want mouse and keyboard in the same Git UI
- Workflows involving merging, rebasing and resolving merge conflicts
strengths
- Separate staged and unstaged panels with line-level and hunk-level staging
- Documents merging, rebasing, stashing and merge conflict resolution in the interface
- Accepts both keyboard shortcuts and mouse interactions
- Installs with brew install lazygit and works with any Git repository
weaknesses
- The gitui project's benchmark lists it at 57 seconds and 2.6GB on the Linux kernel repository
- Does not document themes, GPG signing or Git hook support in its description
Better pick when repository size or responsiveness matters, or when you want keyboard-only control with configurable themes and key bindings.
best for
- Developers working in very large repositories
- Users who want customizable themes and key bindings
strengths
- Benchmark on the Linux kernel repository: 24 seconds and 0.17GB of memory
- Supports pre-commit, commit-msg, post-commit and prepare-commit-msg hooks
- Documents GPG commit signing, submodule support and commit log search
- Installs via Homebrew, cargo install gitui --locked, or pacman -S gitui
weaknesses
- Described as keyboard-only control, with no mouse input documented
- Does not document merge conflict resolution or rebasing in its description
Key differences
- Language: lazygit is written in Go, gitui in Rust.
- Input: lazygit documents keyboard shortcuts and mouse; gitui documents keyboard-only control.
- Large repos: gitui reports 24 seconds and 0.17GB on the Linux kernel; it lists lazygit at 57 seconds and 2.6GB.
- Workflow scope: lazygit documents merging, rebasing and conflict resolution; gitui documents hooks, GPG signing and submodules.
- Customization: gitui documents customizable themes and key bindings; lazygit does not document this.
- Install: both support Homebrew; gitui also documents Cargo and Arch Linux pacman. Both are MIT licensed.
Choose lazygit when
- You want to click through panels as well as use keyboard shortcuts.
- You merge, rebase and resolve merge conflicts from the Git UI.
- You want a view of repository status, file changes, commit history and branches in separate panels.
Choose gitui when
- You work in a repository the size of the Linux kernel and want lower parse time and memory use.
- Your repository relies on pre-commit, commit-msg, post-commit or prepare-commit-msg hooks.
- You sign commits with GPG or want to change themes and key bindings.
- You install Rust tools with cargo install gitui --locked or use pacman on Arch Linux.
When not to use these
- You prefer typing Git commands directly and only need occasional diffs or logs.
- You need a graphical desktop client with windows rather than a terminal interface.
FAQ
- Which is faster, lazygit or gitui?
- gitui documents a benchmark on the Linux kernel repository (900k+ commits): 24 seconds and 0.17GB of memory, against 57 seconds and 2.6GB for lazygit. lazygit does not publish its own benchmark figures.
- Can I use both lazygit and gitui?
- Neither project documents running them together, but both are standalone terminal programs that work on Git repositories, so installing both is possible. Nothing in either project's documentation says they conflict.
- Does gitui or lazygit support the mouse?
- lazygit documents mouse interactions alongside keyboard shortcuts. gitui describes keyboard-only control and does not document mouse support.
- Which is easier to configure?
- gitui documents customizable themes and key bindings. lazygit does not document its configuration format, so neither project gives enough detail to say which is easier.