lazygit

Developer Tools

A simple terminal UI for git commands.

Latest v0.64.0 · by Jesse DuffieldWebsitejesseduffield/lazygit

Release activity

Release activity — 10 releases across 10 days since Feb 7, 2026. Each cell is one day; darker means more releases that day. Nothing is recorded before Feb 7, 2026. Older weeks are hidden at this screen width.
MayJunJulAug
SundayNo releases on Apr 19, 2026No releases on Apr 26, 2026No releases on May 3, 2026No releases on May 10, 2026No releases on May 17, 2026No releases on May 24, 2026No releases on May 31, 2026No releases on Jun 7, 2026No releases on Jun 14, 2026No releases on Jun 21, 2026No releases on Jun 28, 2026No releases on Jul 5, 2026No releases on Jul 12, 2026No releases on Jul 19, 2026No releases on Jul 26, 2026No releases on Aug 2, 2026
MondayNo releases on Apr 20, 2026No releases on Apr 27, 2026No releases on May 4, 2026No releases on May 11, 2026No releases on May 18, 2026No releases on May 25, 2026No releases on Jun 1, 2026No releases on Jun 8, 2026No releases on Jun 15, 2026No releases on Jun 22, 2026No releases on Jun 29, 2026No releases on Jul 6, 2026No releases on Jul 13, 2026No releases on Jul 20, 2026No releases on Jul 27, 2026No releases on Aug 3, 2026
TuesdayNo releases on Apr 21, 2026No releases on Apr 28, 2026No releases on May 5, 2026No releases on May 12, 2026No releases on May 19, 20261 release on May 26, 2026No releases on Jun 2, 2026No releases on Jun 9, 2026No releases on Jun 16, 2026No releases on Jun 23, 2026No releases on Jun 30, 2026No releases on Jul 7, 2026No releases on Jul 14, 2026No releases on Jul 21, 2026No releases on Jul 28, 20261 release on Aug 4, 2026
WednesdayNo releases on Apr 22, 2026No releases on Apr 29, 2026No releases on May 6, 2026No releases on May 13, 2026No releases on May 20, 2026No releases on May 27, 2026No releases on Jun 3, 2026No releases on Jun 10, 2026No releases on Jun 17, 2026No releases on Jun 24, 2026No releases on Jul 1, 2026No releases on Jul 8, 20261 release on Jul 15, 2026No releases on Jul 22, 2026No releases on Jul 29, 2026No releases on Aug 5, 2026
ThursdayNo releases on Apr 23, 2026No releases on Apr 30, 2026No releases on May 7, 2026No releases on May 14, 2026No releases on May 21, 20261 release on May 28, 20261 release on Jun 4, 2026No releases on Jun 11, 2026No releases on Jun 18, 2026No releases on Jun 25, 2026No releases on Jul 2, 2026No releases on Jul 9, 2026No releases on Jul 16, 2026No releases on Jul 23, 2026No releases on Jul 30, 2026No releases on Aug 6, 2026
FridayNo releases on Apr 24, 2026No releases on May 1, 2026No releases on May 8, 2026No releases on May 15, 2026No releases on May 22, 2026No releases on May 29, 2026No releases on Jun 5, 2026No releases on Jun 12, 2026No releases on Jun 19, 2026No releases on Jun 26, 2026No releases on Jul 3, 2026No releases on Jul 10, 2026No releases on Jul 17, 2026No releases on Jul 24, 2026No releases on Jul 31, 2026No releases on Aug 7, 2026
SaturdayNo releases on Apr 25, 2026No releases on May 2, 2026No releases on May 9, 2026No releases on May 16, 2026No releases on May 23, 2026No releases on May 30, 2026No releases on Jun 6, 2026No releases on Jun 13, 2026No releases on Jun 20, 2026No releases on Jun 27, 20261 release on Jul 4, 2026No releases on Jul 11, 2026No releases on Jul 18, 2026No releases on Jul 25, 2026No releases on Aug 1, 2026

10 releases since Feb 7, 2026

Changelog

v0.64.0

Added 6
  • Show a spinner for more long-running operations
  • Support a {{diffContext}} template variable in external diff command
  • Auto-scroll when dragging to create range selection in staging view
  • Create a range selection in list views by dragging with the mouse
  • Reorder commits or rebase todos by dragging with the mouse
  • Show a Github PR's combined checks state in branches list and main view for selected branch
Changed 3
  • Overhaul lazygit's concurrency model to eliminate data races and improve robustness
  • Apply small UI polish improvements
  • Rework the custom pager config and rename to diff renderer
Fixed 10
  • Fix stuck inline status when pushing or fetching
  • Escape the merge conflicts view before prompting to continue the rebase
  • Fix side panel rendering when branches or commits are not their panel's first tab
  • Suppress output from a few git commands that pollute the command log
  • Fix stall with ctrl+z and fg
  • Fix problems related to concurrent repo switch and background refresh
Removed 1
  • Remove the BLOCK_UI refresh mode
What's Changed

This release has massive changes, but most of them should hopefully not be visible: I completely overhauled lazygit's concurrency model, which was, let's say, less than robust; there were lots of data races, and we were just lucky that this didn't result in crashes or misbehavior more often. We now have a robust concurrency model with no known data races, and in fact we run our integration test suite on CI with the -race flag to prove that. The user visible part of this is that some operations run a little more smoothly now; for example, there used to be an ugly spinner freeze at the end of checking out a branch, which is now gone.

However, since the changes were so massive there's a higher-than-usual chance of regressions, so please report any that you find.

Apart from that, we also have a few useful enhancements; the most notable one is probably that we now show the Github checks status of pull requests in the branches panel.

Enhancements 🔥
Fixes 🔧
Maintenance ⚙️
Docs 📖
I18n 🌎
Performance Improvements 📊
New Contributors

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.63.1...v0.64.0

View originalPermalink
How v0.64.0 went

v0.63.1

Fixed 3
  • Improve index.lock retry mechanism
  • Fix userEvents panic
  • Fix a deadlock on Windows when switching between longer diffs

Fixes for a few regressions introduced in the v0.63.0 release.

What's Changed
Fixes 🔧
Maintenance ⚙️

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.63.0...v0.63.1

View originalPermalink
How v0.63.1 went

v0.63.0

Added 3
  • Add direnv support
  • Add a global keybinding for editing the config file
  • Add gui.shrinkSidePanelsToContent option
Changed 11
  • Improve cycling through multiple pagers
  • Detect external repo changes via background polling
  • Make the side panels configurable
  • Improve resolving non-textual and submodule merge conflicts
  • Auto-dismiss the continue-rebase prompt when it becomes stale
  • Support custom pagers and passphrase prompts on Windows
Fixed 6
  • Fix unstaging a submodule with dirty content
  • Fix coloring of wrapped delta lines
  • Fix Files Panel artefacts during rebase commands
  • Keep selected commits stable across refreshes
  • Fix quoting of shell commands on Windows
  • Silently consume unrecognized or malformed escape sequences
What's Changed
Enhancements 🔥
Fixes 🔧
Maintenance ⚙️
I18n 🌎
Performance Improvements 📊

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.62.2...v0.63.0

View originalPermalink
How v0.63.0 went

v0.62.2

Fixed 1
  • Fix the waiting status display for synchronous operations

This fixes another small regression introduced in 0.62.0. For the full list of changes in 0.62, see here.

What's Changed
Fixes 🔧

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.62.1...v0.62.2

View originalPermalink
How v0.62.2 went

v0.62.1

Fixed 1
  • Fix crash when keybindings are disabled that normally show in the status bar

This fixes a regression (crash) introduced in 0.62.0. For the full list of changes in 0.62, see here.

What's Changed
Fixes 🔧
Docs 📖

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.62.0...v0.62.1

View originalPermalink
How v0.62.1 went

v0.62.0

Added 5
  • Support richer keybindings with more complex key combinations like ctrl-alt-shift-x
  • Support GitHub Enterprise for the Pull Requests feature
  • Add support for git flow using the git-flow-next tool
  • Add <alt+up>/<alt+down> as alternate keybindings for moving commits up/down
  • Allow keybindings to configure more than one key
Changed 6
  • Change canonical keybinding syntax from <c-a> to <ctrl+a> notation while maintaining backward compatibility
  • Change default keybinding for submitting a commit from the editor to command-enter on Mac or ctrl-enter on Linux and Windows
  • Define PR colors as hex colors to match GitHub's colors
  • Use more widely-supported Unicode symbols for the commit graph
  • Add platform-specific edit bindings for move-by-word and backspace-word
  • Update to tcell v3
Fixed 9
  • Fix copying a file's absolute path when running in a linked worktree
  • Preserve commit message when quitting while the commit message panel is open
  • Preserve whitespace when remembering commit message
  • Retry on ref lock errors during fetch/pull
  • Stop showing cached PRs when we no longer have a base remote
  • If multiple remotes exist but only one is a Github remote, pick it without prompting

The big change in this release is what I have been referring to as the "keybinding revamp": it allows you to use richer keybindings than the few that were available before; see Custom_Keybindings.md for details. It also describes a new keybinding syntax that is a bit more intuitive than the previous <c-x> notation (but the old one is still supported for backwards compatibility).

Note the section about Terminal compatibility in that document; not all terminals support the new protocol equally well, so it may be a good idea to switch to one that does.

Breaking change: The default keybinding for submitting a commit from the commit description editor has changed from alt-enter to command-enter on Mac, or ctrl-enter on Linux and Windows; these are the same bindings that are used in many multi-line edit field situations, e.g. in GitHub comments. Unfortunately these are not supported by all terminals; see the above-mentioned terminal compatibility for more on that. If you want to revert this change, you can do so by adding the following to your config:

keybinding:
  universal:
    confirmInEditor: [<alt+enter>, <ctrl+s>]

The complete list of changes follows:

What's Changed
Enhancements 🔥
Fixes 🔧
Maintenance ⚙️
Docs 📖
I18n 🌎
Performance Improvements 📊
New Contributors

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.61.1...v0.62.0

View originalPermalink
How v0.62.0 went

v0.61.1

This release has just a few fixes for the recently added GitHub pull requests feature.

What's Changed
Enhancements 🔥
Fixes 🔧
Maintenance ⚙️
New Contributors

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.61.0...v0.61.1

View originalPermalink
How v0.61.1 went

v0.61.0

The big one in this release is support for GitHub pull requests. They are shown as little GitHub icons next to each branch that has one, and you can open a PR in the browser by pressing shift-G. To enable this, all you need to do is install the gh tool if you haven't already, and log in using gh auth login.

What's Changed
Features ✨
Enhancements 🔥
Fixes 🔧
Maintenance ⚙️
Docs 📖
I18n 🌎
Performance Improvements 📊
New Contributors

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.60.0...v0.61.0

View originalPermalink
How v0.61.0 went

v0.60.0

What's Changed
Enhancements 🔥
Fixes 🔧
Maintenance ⚙️
Docs 📖
I18n 🌎
Other Changes
New Contributors

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.59.0...v0.60.0

View originalPermalink
How v0.60.0 went

v0.59.0

What's Changed
Enhancements 🔥
Fixes 🔧
Maintenance ⚙️
Docs 📖
I18n 🌎
New Contributors

Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.58.1...v0.59.0

View originalPermalink
How v0.59.0 went
View all

Discussion