Git Clients

lazygit – terminal user interface for Git

lazygit is a terminal user interface for Git that brings repository management into a keyboard-driven, multi-panel environment. It simplifies operations that would otherwise involve numerous Git commands, allowing developers to concentrate on their changes rather than remembering complex command syntax.

The interface organises files, branches, commits, stashes and remote information into separate views. It is particularly useful for developers who regularly stage partial changes, rewrite commit history or switch between branches while working entirely in the terminal.

This is free and open source software.

Key Features

  • Stage and unstage individual files, hunks and lines through interactive diff views.
  • Review working-tree changes and compare staged and unstaged modifications before committing.
  • Perform interactive rebases, including squashing, fixing up, editing, dropping and reordering commits.
  • Amend older commits by applying staged changes to a selected revision.
  • Resolve merge conflicts using interactive controls for examining conflicting changes.
  • Create, rename, delete and switch branches, including quick checkout of recently used branches.
  • Browse and filter commit logs, diffs, branches and stashes.
  • Cherry-pick commits between branches and initiate Git bisect operations.
  • Manage stashes, including saving, applying, popping and deleting entries.
  • Create Git worktrees for working on multiple branches without changing the current working directory.
  • Fetch, pull and push changes to remote repositories.
  • Undo and redo supported Git operations using information recorded in the reflog.
  • Build custom patches to move selected changes between commits or split existing commits.
  • Supports configurable keybindings, custom commands, external diff viewers and colour schemes.
  • Cross-platform support – runs on Linux, macOS, and Windows.

Website: github.com/jesseduffield/lazygit
Support:
Developer: Jesse Duffield
License: MIT License

lazygit
Click image for full size

lazygit is written in Go. Learn Go with our recommended free books and free tutorials.


Related Software

Text-Based Git Clients
lazygitSimple yet hugely popular terminal UI for git commands, written in Go
GitUIOffers the comfort of a GUI git client but right in your terminal
FugitiveVim plugin for Git
MagitInspect and modify your Git repositories with Emacs
tigncurses-based Git repository browser
NeogitGit interface plugin for Neovim inspired by Magit
forgitUtility for using git interactively
GituTUI Git client inspired by Magit
ggcGo Git CLI
bitExperimental modernized git CLI
pygitzenPython-native terminal-based Git client
gitinCommit, branch, status explorer for Git
FroggitModern, minimalist Git TUI
GitwigKeyboard-driven terminal interface for managing Git repositories

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted