← Package directory
Available on winget

Install lazygit

Simple terminal UI for git commands.

Install with winget
winget install --id JesseDuffield.lazygit
Upgrade
winget upgrade --id JesseDuffield.lazygit
Uninstall
winget uninstall --id JesseDuffield.lazygit

About lazygit

Simple terminal UI for git commands.

What's new in 0.64.0

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 πŸ”₯ - Show a spinner for more long-running operations by @stefanhaller in #5765 - Remove the BLOCK_UI refresh mode by @stefanhaller in #5790 - Support a {{diffContext}} template variable in external diff command by @stefanhaller in #5841 - Some small UI polish by @stefanhaller in #5853 - Auto-scroll when dragging to create range selection in staging view by @stefanhaller in #5855 - Create a range selection in list views by dragging with the mouse by @stefanhaller in #5856 - Reorder commits (or rebase todos) by dragging with the mouse by @stefanhaller in #5857 - Rework the custom pager config (rename to diff renderer) by @ste...

Read release notes

Version history

Version Updated Notes
0.64.0 Unknown 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 race...
0.63.1 Unknown Fixes for a few regressions introduced in the v0.63.0 release. What's Changed Fixes πŸ”§ - Improve index.lock retry mechanism by @stefanhaller in #5788 - Fix userEvents panic by @stefanhaller in #5793 - Fix a deadlock on Wi...
0.63.0 Unknown What's Changed Enhancements πŸ”₯ - Add direnv support by @stefanhaller in #5660 - Improve cycling through multiple pagers by @stefanhaller in #5678 - Detect external repo changes via background polling by @stefanhaller in #...
0.62.2 Unknown 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 πŸ”§ - Fix the waiting status display for synchronous operations by @stefanhaller in #5659
0.62.1 Unknown What's Changed Fixes πŸ”§ - Fix crash when keybindings are disabled that normally show in the status bar by @stefanhaller in #5655 Docs πŸ“– - Add docs for how to add the default, non-pager diff to the list of pagers by @stefa...
0.62.0 Unknown What's Changed Enhancements πŸ”₯ - Retry on ref lock errors during fetch/pull by @majiayu000 in #5161 - Preserve whitespace when remembering commit message by @stefanhaller in #5528 - Define PR colors as hex colors to make...
0.61.1 Unknown This release has just a few fixes for the recently added GitHub pull requests feature. What's Changed Enhancements πŸ”₯ - Hide closed pull requests on main branches by @stefanhaller in #5501 Fixes πŸ”§ - Normalize repository o...
0.61.0 Unknown 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 n...
0.60.0 Unknown What's Changed Enhancements πŸ”₯ - Rename "Copy commit hash to clipboard" to mention it's an abbreviated hash by @stefanhaller in #5331 - Hide the "Fetching..." status of the auto-fetch when bottom line is hidden by @stefan...
0.59.0 Unknown What's Changed Enhancements πŸ”₯ - Have "Find base commit for fixup" ignore fixup commits for the found base commit by @stefanhaller in #5210 - Exclude commit trailers from line wrapping by @stefanhaller in #5230 - Limit po...
0.58.1 Unknown What's Changed Enhancements πŸ”₯ - Update search position (match x of y) when changing the selection in a list view by @stefanhaller in #5169 Fixes πŸ”§ - When doing ctrl-f, and the resulting commit is not visible, scroll it i...
0.58.0 Unknown What's Changed Enhancements πŸ”₯ - Add keys for command log menu items by @PeterCardenas in #5096 - Add Codeberg as a supported git hosting service by @yaadata in #5130 - Change keybinding of "keep" item in Merge Conflict m...
0.57.0 Unknown What's Changed Enhancements πŸ”₯ - Open pull requests in browser with extra leading slashes removed by @hrzlgnm in #5018 - Allow using SelectedSubmodule in CustomCommands by @rlkandela in #5015 - Don't allow empty input in...
0.56.0 Unknown What's Changed Enhancements πŸ”₯ - Don't break line after footnote symbol in commit messages by @stefanhaller in #4912 - Give better visual feedback when checking out the previous branch by @stefanhaller in #4929 - Add merg...
0.55.1 Unknown This hotfix release fixes two bugs that have crept in in v0.55.0: one is a regression that broke displaying the enter key in the keybindings menu, the other is a problem with a newly added feature that didn't work quite...
0.55.0 Unknown What's Changed Enhancements πŸ”₯ - Allow filtering the keybindings menu by keybinding by @stefanhaller in #4821 - Add support for suspending LazyGit with Ctrl+Z on Unix systems by @cowboy8625 in #4757 - Add "CopyToClipboard...
0.54.2 Unknown Here's another point release; this one fixes a performance regression in 0.54.0 that made flicking through diffs a little less snappy (or a lot less, in some scenarios) than it could be. For the changes in 0.54.0, see ht...
0.54.1 Unknown This hotfix release fixes a regression in 0.54.0 that made lazygit fail on startup when multiple users use it on a single machine. For the changes in 0.54.0, see https://github.com/jesseduffield/lazygit/releases/tag/v0.5...
0.54.0 Unknown Again we don't have any major new features this time (unless you count the support for alt-backspace for deleting words in the commit message editor, which is one of my favorite additions), but lots of smaller quality-of...
0.53.0 Unknown What's Changed Enhancements πŸ”₯ - Add option to disable warning when amending last commit by @johnhamlin in #4640 - Add bold style for border by @aidancz in #4644 - Add credential prompts for PKCS11-based SSH keys by @Jade...