v0.54.0
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-life improvements and bug fixes. The most notable one is probably the fix for the stale index.lock problem, which was a very long-standing bug that seemed to affect some users much more than others for some reason.
Breaking Changes
- The default sort order for local and remote branches has changed: it used to be 'recency' (based on reflog) for local branches, and 'alphabetical' for remote branches. Both of these have been changed to 'date' (which means committerdate). If you do liked the old defaults better, you can revert to them with the following config:
git:
localBranchSortOrder: recency
remoteBranchSortOrder: alphabetical
- The default selection mode in the staging and custom patch building views has been changed to hunk mode. This is the more useful mode in most cases, as it usually saves a lot of keystrokes. If you want to switch back to the old line mode default, you can do so by adding the following to your config:
gui:
useHunkModeInStagingView: false
What's Changed
Enhancements 🔥
- Add confirmation for hard reset by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4704
- Provide user config defaults for UI-changeable settings by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4717
- Improve mouse handling of suggestions panel by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4726
- Add new command "Checkout previous branch" by @kyu08 in https://github.com/jesseduffield/lazygit/pull/4728
- Add confirmation for nuking the working tree by @DawidPietrykowski in https://github.com/jesseduffield/lazygit/pull/4727
- Support Alt+Backspace for word deletion in text areas by @rtzll in https://github.com/jesseduffield/lazygit/pull/4741
- Don't use hunk mode for added or deleted files even when useHunkModeInStagingView config is on by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4758
- Show [0] keybinding in main view title by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4754
- Draw divergence from base branch right-aligned in branches view by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4785
- Enable hunk staging mode by default by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4780
Fixes 🔧
- Fix scrolling hunk into view when selecting next hunk by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4709
- Fix stale main view content when entering/exiting filtering view by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4719
- Detect double-clicks properly by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4725
- Fix commit searching during rebase or in divergence from upstream view by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4730
- Fix amending commits whose commit message is empty by @aidancz in https://github.com/jesseduffield/lazygit/pull/4732
- Several small fixes to filtering mode (by path or author) by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4749
- Show diff for renamed file when filtering by path by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4750
- Allow rewording or dropping commits in filtering mode by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4756
- Fix index out of bounds panic when repository has massive tags by @chojs23 in https://github.com/jesseduffield/lazygit/pull/4776
- When pressing
ato stage all files, don't include untracked files when showing only tracked files by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4779 - Fix commit hash colors when filtering by path or aythor by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4789
- Improve temp dir handling by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4784
- Terminate git processes more gracefully to avoid the stale index.lock problem by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4782
Maintenance ⚙️
- Raise sponsors PRs as a draft by @jesseduffield in https://github.com/jesseduffield/lazygit/pull/4694
- Update the peter-evans/create-pull-request action to v7 by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4695
- Update release workflow by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4703
- Clean up the .gitignore file by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4706
- Remove unused code and texts by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4715
- Remove deprecated edit configs by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4716
- Bump minimum required git version to 2.32 by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4718
- Use a better way of pinning the version of golangci-lint by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4733
- Make the minimum required git version a placeholder in the error text by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4778
- refactor: use slices.Equal to simplify code by @jishudashu in https://github.com/jesseduffield/lazygit/pull/4764
Docs 📖
- Fix broken markdown in auto-generated keybindings documentation by @KEY60228 in https://github.com/jesseduffield/lazygit/pull/4690
- Remove the homebrew tap from the readme by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4705
I18n 🌎
- Update translations from Crowdin by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4791
Performance Improvements 📊
- Fix performance regression on startup in repos with many tags by @stefanhaller in https://github.com/jesseduffield/lazygit/pull/4777
New Contributors
- @KEY60228 made their first contribution in https://github.com/jesseduffield/lazygit/pull/4690
- @DawidPietrykowski made their first contribution in https://github.com/jesseduffield/lazygit/pull/4727
- @rtzll made their first contribution in https://github.com/jesseduffield/lazygit/pull/4741
- @chojs23 made their first contribution in https://github.com/jesseduffield/lazygit/pull/4776
- @jishudashu made their first contribution in https://github.com/jesseduffield/lazygit/pull/4764
Full Changelog: https://github.com/jesseduffield/lazygit/compare/v0.53.0...v0.54.0