canido.dev
Projects/jesseduffield / lazygit

lazygit

A terminal UI for git

Get it on GitHub
Unclaimed

Built by @jesseduffield on GitHub. This page was written by @iluxav from public sources, last updated for v0.65.0 (2026-09-05), and may lag behind new releases.

Maintain lazygit? Claim it
v0.65.0 / 2026-09-0518 things you can do6 changes to know before upgradingFollow (Atom feed)

Stage single lines, rebase interactively, cherry-pick, bisect, resolve conflicts and undo mistakes in git with one key each, from a terminal window.

What you can do with it

Stage or discard individual lines or hunks of a file.

Present at v0.55.1

Squash, fixup, drop, reword and reorder commits with an interactive rebase driven by keys.

Present at v0.55.1

Add staged changes to an older commit, not just the last one.

Present at v0.55.1

Copy commits and paste them onto another branch.

Present at v0.55.1

Find the commit that introduced a bug with git bisect, marking commits good or bad.

Present at v0.55.1

Move or remove parts of a commit by building a custom patch from it.

Present at v0.55.1

Undo and redo git actions using the reflog.

Good to know

Covers actions recorded in the reflog; not working-tree changes.

Present at v0.55.1

Create, switch and remove git worktrees.

Present at v0.55.1
Show all 18

Show only the commits that touch a path, or by an author.

Present at v0.55.1

See the commit graph and compare any two commits.

Present at v0.55.1

Bind your own commands, with prompts and menus, to keys.

Present at v0.55.1

Show diffs through another renderer such as delta, difftastic or `git diff --color-words`.

Present at v0.55.1

Resolve all conflicts in chosen files as ours, theirs or both, or open the external merge tool.

Since v0.56.0

Add a fork's remote by typing its owner, and check out a branch from it.

Since v0.57.0

Open a pull request or commit page on the repository's hosting service from lazygit.

Since v0.58.0

See a GitHub pull request's status next to its branch and open it with one key.

Good to know

GitHub only; needs the `gh` CLI logged in.

Since v0.61.0

Start and finish git flow features, releases and hotfixes, with legacy git-flow or git-flow-next.

Good to know

Needs git-flow or git-flow-next installed.

Since v0.62.1

Reorder, hide and regroup the side panels and their tabs.

Since v0.63.0

Before you upgrade

Newest first
v0.64.02026-08-04

lazygit migrates these to `git.diffRenderers` and `cycleDiffRenderers` by rewriting the config file and stops with an error if it cannot write it; update a read-only config by hand.

Action requiredInferredAffects: Configs that set `git.paging`, `git.pagers` or the `cyclePagers` keybindings and live in a read-only file (for example managed by Nix or home-manager)
Read the evidence
Show 3 older
Release history 10
v0.65.02026-09-05

Filter the keybindings and recent repos menus just by typing.

Details

Typing in the keybindings and recent repos menus filters them; worktrees can be filtered by branch name; the window looks inactive when unfocused. A custom command with an unknown `context` name is now rejected when the config loads.

v0.65.0.

Behavior changed: Bind your own commands, with prompts and menus, to…Improved: Create, switch and remove git worktrees.

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.64.02026-08-04

Reorder commits by dragging them with the mouse.

Details

Drag commits or rebase todos to move them, and drag to select a range. `git.pagers` is renamed `git.diffRenderers` with a `type` field (`stdinFilter`, `extDiff`, `rawGit`) and one `command` field; existing configs are rewritten automatically.

Also: The branches list shows a GitHub PR's combined checks state.

v0.64.0.

Improved: Squash, fixup, drop, reword and reorder commits wit…Improved: Show diffs through another renderer such as delta,…Action required / inferred: Show diffs through another renderer such as delta,…Improved: See a GitHub pull request's status next to its bran…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.63.02026-07-04

Rearrange, hide or regroup lazygit's side panels.

Details

New `gui.sidePanels` option to reorder, hide and regroup panels and tabs, and `gui.shrinkSidePanelsToContent`. direnv environments load when switching repos or worktrees; external changes are picked up by polling; `<alt+shift+c>` edits the config file.

v0.63.0; direnv support works when direnv is installed.

Added: Reorder, hide and regroup the side panels and their…Improved: Create, switch and remove git worktrees.

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.62.12026-05-28

Use git-flow-next with lazygit's git flow menu.

Details

Keybindings accept any modifier combination (`<ctrl+alt+shift+x>`) and several keys each; the documented syntax is now `<ctrl+a>` (the older `<c-a>` still works). git-flow-next and GitHub Enterprise pull requests are supported. Groups v0.62.0 and v0.62.1.

Also: `<alt+up>`/`<alt+down>` move commits; the commit graph uses more widely supported symbols.

v0.62.1.

Added: Start and finish git flow features, releases and ho…Improved: See a GitHub pull request's status next to its bran…Improved: Bind your own commands, with prompts and menus, to…Action required: Squash, fixup, drop, reword and reorder commits wit…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.61.02026-04-06

See which branches have a GitHub pull request, and whether it is open, closed or merged.

Details

With `gh` installed and logged in, branches with a pull request show a colored PR icon, and `shift-G` opens it. File trees now mix files and folders by default (`gui.fileTreeSortOrder: mixed`).

v0.61.0; the PR icons need `gh auth login`.

Added: See a GitHub pull request's status next to its bran…Behavior changed: Stage or discard individual lines or hunks of a fil…Improved: Bind your own commands, with prompts and menus, to…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.60.02026-03-09

Filter the file lists by path as you type, and stage or diff only what the filter shows.

Details

Typing a filter in the files and commit files views now filters by full path instead of searching; staging, diffs and discards apply only to the visible files. Lines can be removed from a custom patch directly.

v0.60.0.

Behavior changed: Stage or discard individual lines or hunks of a fil…Improved: Move or remove parts of a commit by building a cust…Improved: Create, switch and remove git worktrees.

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.58.02026-01-03

Open pull requests for repositories hosted on Codeberg.

Details

Codeberg is a supported hosting service for opening pull requests and commits. The merge conflict menu's keep item is on `k` again. Custom command menu prompts take custom keybindings.

v0.58.0.

Added: Open a pull request or commit page on the repositor…Improved: Bind your own commands, with prompts and menus, to…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.57.02025-12-06

Add a fork as a remote by typing just its owner's name.

Details

A command adds a fork remote by replacing the owner in the origin URL, and can check out a branch from it. Switching repos triggers a background fetch at once.

v0.57.0.

Added: Add a fork's remote by typing its owner, and check…

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.56.02025-11-01

Resolve every conflict in chosen files as ours, theirs or both from a merge menu, without an external tool.

Details

`M` on a conflicted file now opens a merge options menu (ours, theirs, union, or the external merge tool); a no-ff merge option; several pagers in `git.pagers`, cycled with `|`.

Also: Checkout of the previous branch gives clearer feedback; `gui.skipSwitchWorktreeOnCheckoutWarning`.

v0.56.0.

Added: Resolve all conflicts in chosen files as ours, thei…Improved: Show diffs through another renderer such as delta,…Behavior changed / inferred

Seeded by @iluxav with Claude Code (canido)

Read the evidence
v0.55.12025-09-17
Starting point

Do the hard parts of git, from staging single lines to interactive rebase, with one key each in a terminal UI.

Details

Starting point: a terminal UI for git with panels for files, branches, commits and stash, run with `lazygit`.

Binary releases, Homebrew, most Linux package managers, or `go install`. Needs git.

Added: Stage or discard individual lines or hunks of a fil…Added: Squash, fixup, drop, reword and reorder commits wit…Added: Add staged changes to an older commit, not just the…Added: Copy commits and paste them onto another branch.Added: Find the commit that introduced a bug with git bise…Added: Move or remove parts of a commit by building a cust…Added: Undo and redo git actions using the reflog.Added: Create, switch and remove git worktrees.Added: Show only the commits that touch a path, or by an a…Added: See the commit graph and compare any two commits.Added: Bind your own commands, with prompts and menus, to…Added: Show diffs through another renderer such as delta,…

Seeded by @iluxav with Claude Code (canido)

Read the evidence