Lazygit ======= Lazygit - a simple terminal UI for git commands Date: February 7, 2026 Lazygit is a simple terminal UI for git commands that makes common git operations fast and visual. ## Features - **Visual staging** - Stage/unstage files with spacebar - **Branch management** - Create, checkout, merge branches easily - **Conflict resolution** - Interactive merge conflict handling - **Commit history** - Browse and search commits - **Stash management** - View and apply stashes - **Custom commands** - Add your own keybindings ## Setup Install via package manager: ```bash # Ubuntu/Debian sudo add-apt-repository ppa:lazygit-team/release sudo apt update sudo apt install lazygit # Arch Linux sudo pacman -S lazygit # macOS brew install lazygit # Via mise mise install lazygit ``` ## Launching ```bash lazygit ``` Or from within a git repo: ```bash lg # If you have an alias ``` ## Key Bindings ### Global | Key | Action | |-----|--------| | `?` | Help | | `q` | Quit | | `1-5` | Switch panel (Status, Files, Local Branches, Commits, Stash) | | `R` | Refresh | ### Files Panel | Key | Action | |-----|--------| | `Space` | Stage/unstage | | `d` | Discard changes | | `a` | Stage all | | `A` | Unstage all | | `c` | Commit | | `C` | Commit with editor | | `e` | Edit file | ### Branches Panel | Key | Action | |-----|--------| | `c` | Checkout | | `n` | New branch | | `m` | Merge | | `r` | Rebase | | `d` | Delete | ### Commits Panel | Key | Action | |-----|--------| | `s` | Squash | | `r` | Reword | | `d` | Drop | | `e` | Edit | | `p` | Pick | ## Custom Commands Add custom commands in `~/.config/lazygit/config.yml`: ```yaml customCommands: - key: 'f' context: 'files' description: 'Fixup commit' command: 'git commit --fixup {{.SelectedLocalCommit.Sha}}' subprocess: true ``` ## See Also <div class="embed-card"> <a href="/git/" class="embed-card-link"> <div class="embed-card-content"> <div class="embed-card-title">Git Configuration</div> <div class="embed-card-description">Git configuration with aliases, delta for diffs, and work/personal separation</div> <div class="embed-card-meta">Feb 7, 2026</div> </div> </a> </div> <div class="embed-card"> <a href="/gitui/" class="embed-card-link"> <div class="embed-card-content"> <div class="embed-card-title">gitui</div> <div class="embed-card-description">gitui - a blazing-fast terminal UI for git</div> <div class="embed-card-meta">Feb 7, 2026</div> </div> </a> </div> <div class="embed-card"> <a href="/delta/" class="embed-card-link"> <div class="embed-card-content"> <div class="embed-card-title">Delta</div> <div class="embed-card-description">Delta - syntax-highlighting pager for git and diff output</div> <div class="embed-card-meta">Feb 7, 2026</div> </div> </a> </div> <div class="embed-card embed-card-external"> <a href="https://github.com/jesseduffield/lazygit" class="embed-card-link" target="_blank" rel="noopener noreferrer"> <div class="embed-card-image"> <img src="https://opengraph.githubassets.com/82349f5c5216b21086c8d33ac2facf9bc67141241711b8812a6a693ea295b93c/jesseduffield/lazygit" alt="" loading="lazy"> </div> <div class="embed-card-content"> <div class="embed-card-title">GitHub - jesseduffield/lazygit: simple terminal UI for git commands</div> <div class="embed-card-description">simple terminal UI for git commands. Contribute to jesseduffield/lazygit development by creating an account on GitHub.</div> <div class="embed-card-meta">GitHub &middot; github.com</div> </div> </a> </div>