Lazygit
Simple terminal UI for Git.
A terminal UI for Git that makes staging hunks, rebasing, resolving conflicts, and more blazing fast.
About Lazygit
Lazygit is a simple but powerful terminal user interface for Git operations. It makes complex Git workflows β like interactive rebasing, cherry-picking, staging individual lines (hunks), and resolving merge conflicts β accessible via a clean, keyboard-driven TUI.
The interface is divided into panels: status, branches, commits, stashes, and a diff view. You can stage/unstage individual files or line-level hunks, write commit messages, push/pull/fetch, and manage branches β all without memorizing Git command syntax.
Interactive rebase, which is notoriously tricky from the CLI, becomes visual and intuitive in Lazygit. The same developer also made Lazydocker, and both tools share the same philosophy: make complex tools approachable through a beautiful TUI.