Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Command-Line Apps
  3. lazygit

lazygit

MITGov0.62.2

A simple terminal UI for Git commands that makes complex operations like interactive rebasing and staging individual lines easier.

GitHubGitHub
79.1k stars2.9k forks0 contributors

What is lazygit?

Lazygit is a terminal user interface (TUI) for Git that provides a visual, interactive way to manage version control. It simplifies complex Git operations like interactive rebasing, staging individual lines, cherry-picking, and bisecting, all through a keyboard-driven interface. The tool aims to reduce the friction of using Git's command-line interface while retaining its full power.

Target Audience

Developers and engineers who use Git regularly and want a faster, more intuitive way to perform complex version control tasks without leaving the terminal. It's especially useful for those who find Git's command-line arguments cumbersome or hard to remember.

Value Proposition

Lazygit offers a streamlined, feature-rich TUI that makes Git more approachable without sacrificing functionality. Its unique selling points include visual interactive rebasing, precise line staging, custom patch manipulation, and an undo system, all wrapped in a highly configurable interface that stays true to terminal workflows.

Overview

simple terminal UI for git commands

Use Cases

Best For

  • Performing interactive rebases without editing manual TODO files
  • Staging specific lines or hunks within a file instead of entire files
  • Managing multiple feature branches simultaneously using worktrees
  • Visually comparing differences between any two commits or branches
  • Building and applying custom patches from historical commits
  • Simplifying complex Git workflows like cherry-picking and bisecting

Not Ideal For

  • Teams requiring full graphical user interfaces with mouse support for Git operations
  • Environments where terminal-based tools are impractical, such as in automated CI/CD scripts that rely on plain Git commands
  • Users who primarily perform basic Git commands and find the overhead of learning a TUI unnecessary

Pros & Cons

Pros

Interactive Rebase Simplification

Allows visual manipulation of commits for rebasing without editing manual TODO files, as demonstrated in the README's rebase demo that shows squashing and reordering with keyboard shortcuts.

Precise Line Staging

Enables staging individual lines or hunks within files directly from the interface, streamlining partial commits and reducing the need for command-line patch editing.

Custom Patch Building

Supports creating and applying custom patches from historical commits for selective changes, a powerful feature highlighted in the rebase magic tutorial for complex workflows.

Worktree Management

Facilitates creating and switching between worktrees to manage multiple branches simultaneously without stashing, improving productivity for parallel development.

Cons

External Dependency for PR Integration

GitHub pull request viewing requires the `gh` CLI to be installed and authenticated, adding an extra setup step that isn't needed for core Git functionality.

Keybinding Learning Curve

Users must memorize a new set of keyboard shortcuts, which can be initially confusing and counterintuitive for those accustomed to plain Git commands or other TUIs.

Terminal-Only Limitation

Lacks graphical elements and mouse support, which may not suit users who prefer visual feedback or have accessibility needs that rely on GUI tools.

Frequently Asked Questions

Quick Stats

Stars79,078
Forks2,861
Contributors0
Open Issues827
Last commit1 day ago
CreatedSince 2018

Tags

#version-control#developer-tools#productivity#terminal#cli-tool#tui#git-workflow#git#terminal-ui#cli#go

Built With

G
Go

Included in

Command-Line Apps19.2kRobotic Tooling3.8k
Auto-fetched 21 hours ago

Related Projects

divedive

A tool for exploring each layer in a docker image

Stars54,214
Forks1,990
Last commit5 months ago
learnGitBranchinglearnGitBranching

An interactive git visualization and tutorial. Aspiring students of git can use this app to educate and challenge themselves towards mastery of git!

Stars33,577
Forks5,984
Last commit16 days ago
semantic-releasesemantic-release

:package::rocket: Fully automated version management and package publishing

Stars23,748
Forks1,804
Last commit19 hours ago
gituigitui

Blazing 💥 fast terminal-ui for git written in rust 🦀

Stars22,072
Forks734
Last commit12 days 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