Releases: jesseduffield/lazygit
v0.23.4
v0.23.3
Changelog
1ff405e Copy a commit message to clipboard: Changes to latest version
dac3978 Merge pull request #1049 from jesseduffield/cd-update-ppa
7074cc2 Merge pull request #1050 from jesseduffield/dawidd6-patch-1
031e97e more password checks on commands that talk to the remote
624fb8d preserve width of side panel when main view split unless window is wide enough
b1dd3c4 support rebinding confirm/newline keys in editor
327b6ad utils: ReplaceAll -> Replace
1dc8375 workflows: update PPA repo as part of CD process
v0.23.2
lazygit 0.23.2 Release Notes
- Fixed bug where editing a file with spaces did not work
- Fixed formatting issue with delta that rendered '[0;K' to the screen
- Fixed bug where lazygit failed upon attempting to create a config file in a
read-only filesystem
v0.23.1
lazygit 0.23.1 Release Notes
Custom Commands:
-
You can now create your own custom commands complete with menus and prompts
to tailor lazygit to your workflowSee https://github.com/jesseduffield/lazygit/wiki/Custom-Commands-Compendium
and https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Command_Keybindings.md
Submodules:
- Add, update, and sync submodules with the new submodules tab. To enter a
submodule hit enter on it and then hit escape to return to the superproject
Bare repos:
- Bare repos are now supported with the --git-dir and --work-tree args, so you
can use lazygit to manage your dotfiles!
Staging panel navigation:
- Ability to search with '/' and jump page by page with ',', '.', '<', '>' in
the staging and patch-building contexts
More clipboard stuff:
- More text copying. Pressing
ctrl+o
on a commit to copy
its SHA, or a file to copy its name, etc.
Easily view lazygit logs:
- View lazygit logs with
lazygit --logs
(in another
terminal tab runlazygit --debug
to write to logs)
Other:
-
For the butterfingers of the world, you are now protected from accidentally
deleting the .gitignore file (thanks @kobutomo!) -
Fewer panics
-
No more 'invalid merge' errors on startup
-
Smaller binary after ditching the Viper and i18n package. Beware! This means
configs are now case-sensitive so if your config stops working check the case
sensitivity of the keys against what you get fromlazygit --config
-
Code refactor for better dev experience including more type safety
-
Integration tests have finally been added and there are many more to come.
These will assist in ensuring no regressions have been introduced in future
releases. Making an integration test is actually pretty fun you basically just
record yourself using lazygit and that's it. See the guide to integration tests at
https://github.com/jesseduffield/lazygit/blob/master/docs/Integration_Tests.md -
Showing release notes from within lazygit, as you no doubt have realised. I'm
too lazy to include retrospective release notes but better late than never.
v0.22.8
v0.22.6
Changelog
10dde51 Fix numbering in Dutch IntroPopupMessage
1e1c90c Fix numbering in English IntroPopupMessage
86f296a add config for disabling force pushing
9eba983 ensure that when a branch name is ambiguous we still show the correct colours
71ff183 fast UI update when moving commits in rebase mode
c471f49 fix test
4954791 fix test
70eda03 implement config option for disabling force pushing
14c8b80 show loading state when amending top commit
250fe74 use GetBool instead of casting
v0.22.1
Changelog
1494a38 Remove tab keybinding for cycling tab
45a0378 do not create error panel for sentinel errors
afd6691 use clipboard package to handle clipboard stuff
f5c55f0 use new branch logic when 'checking out' remote branch
f05adb4 workflows: match every branch
bd8f198 workflows: run CI on master or pull request only
v0.22.0
Changelog
b211a14 Add GitUI to alternatives in readme
d49e75b Add tab keybinding in commit message
845c807 Decouple escaping from quitting
f172f20 Return whether the context has a parent or not along with that parent
a3d1455 Update README.md
ef744e4 Update dutch translations
b77abdc WIP
f5b22d9 WIP
6c270b6 WIP
7ebed76 WIP
2fac2f9 WIP
99707a5 WIP
6fb83b7 WIP
0ea0c48 WIP
d4f134c WIP
7f89113 WIP
88d329c WIP
ae1c453 WIP
433d54f WIP constants for context keys
3c87ff4 WIP: standardising how we render to main
27cd12e accept umlaut keybindings
8da93fd add description field to ListItem interface
db826b3 add keybinding to create new branch off of commit
e2f3b2b add log when git status errors
13f567f add portrait mode for when the window is really tall
0e65db1 add solus linux installation info
f02ccca add specs to boxlayout package
974c651 add sub commit context
8430b04 allow configurable main panel split
f4718a9 allow editing commit files
2d18d08 allow entering a password when fast forwarding another branch
3eb3de3 allow explicitly managing focus
0ac4027 allow getting the current item generically
291a8e4 allow opening files on the selected line in the staging panel
44d8b3e allow overriding default confirm/escape keybindings
e26af25 allow rebasing onto remote branch
469ac11 allow renames to be discarded
0f7003d allow spamming the p key
ddf25e1 allowing commit files to be viewed in reflog as well
262ff24 always reset branch selected index when creating new branch
9ca0073 attempt at fixing bad lazyloading
c2b154a better handling of our different modes and also cherry picking
4fb52ce better handling of there being no commit files
3ebb91c better keybinding ('W') for viewing diff
7d5fe4b better logic for staging a renamed file
a12d181 better logic for taking focus away from popup panels
1956301 better menu item name
28cd827 better popups
5638a40 carry more mode state across after returning from subprocess
438abd6 centralise code for copying to clipboard
1fd35f3 centralise logic for information section
fda9f4e centralise logic for rendering options map
f0c3d3f centralise setting of main views context
cec4cb4 centralise some list view code
0f7b2c4 centralise split main panel code
ba7e098 check for missing view when scrolling
d9fa02c clean up interface for popup panels
ade54b3 cleanup
a861034 cleanup
148f601 cleanup now that we're always using the same diff command
ed85ea6 cleanup of list context file
2c3f5be comment these things out because we're not using them yet
2d90e1e commit files kind of generalised
2488e00 concurrent-safe handling of context state
5874529 deal with the fact that a nil wrapped in an interface is not equal to nil
771e87e do not reset cursor unless previous file has moved position
30a555b don't needlessly load every file
fcf916d don't panic
e876352 dont check for error when sending view to bottom
fce7cdc enlargen stash window when its focused
4198bba ensure there is always a current context
53da858 escape patch building mode on hitting escape at the top level
12bf851 faster patch manager
63e6eea files view
b0fe963 fix branches select sig
d2d88fe fix focus change on merge popup return
a95fd58 fix logic for entering merging panel
17b84e0 fix remote branches select sig
43f8bae fix remotes select sig
bd66162 fix up patch manager
660cc2f follow cursor when staging and unstaging a file rename
2f893bf format
e6a1bd6 generalise patch building stuff
f63ec38 genericise creating new branches off things
2f5d503 good progress
c837c54 handle diffing and filtering by file in commit files view
59d61f0 hide secondary view when escaping patch building panel
62a6620 hide view if not specified in dimensions object
7ebb834 ignore warning messages about files when obtaining file statuses
76e5ec6 immediately quit when pressing q in diff or filter mode
2fdadd3 introduce new approach to handling tab states
ac0eedd lots more stuff
401f291 lowercase function name
cc872b0 menu view
79e73d2 minor cleanup
f49e494 minor refactor
0dd2c86 minor refactor
2eee079 minor rename
c730271 minor update
3f7136f missed a spot
f3c87bd more
d6005dc more accurate comment
b1529f1 more cherry picking code into its own file
442f6cd more cherry picking stuff, mostly around the reflog
b39bcd5 more lenient for switching into portrait mode
9b7a693 more removing of g
15229bb more removing of g and v
419cb9f more standardisation
9c866fd more standardisation
2b812b0 more standardisation of rendering
b3a7acb more standardising modes
e4beaf4 more stuff
e73937c more work on new layout functionality
1e12a60 move box layout stuff into its own package
4f4df8f move context specific keybindings into context file
c8add47 move cursor to right when using auto prefix
119d5be move into list context file
134566e move into more appropriate file
826d166 move patch stuff into its own package
b641ecd move some things around
dc183c0 no need to set views on top anymore
4080e9b only return focus if we already have it
1fd0f31 only show rebasey commands on a local commit when patch building
1b78a42 pass callback directly
53f06f6 prefill commit reword editor
f815c56 prefill remote edit prompts
a32947e prepare for OnRender prop
42479a7 prevent moving cursor past last character in prompt modal
22c7110 prevent moving cursor past last character in prompt modal
5cdfd41 prevent spamming pull or push buttons
6349214 prompt to commit all files if committing with no staged files
a9cc321 prompt to create new branch if branch not found
59f5f5c refactor
fbd61fc refactor how we handle different modes
771d4b5 refactor how we handle layouts
28208e8 refactor list view
ffda283 remove anonymous reporting popup cos we dont do it anymore anyway
ce20d1b remove clipboard option for now because we need a better way of doing it
9ee7793 remove comment
953298d remove dead code
c9ae54a remove previous view
50c9ae8 remove sdump
1716de3 remove space as keybinding for confirmation panel
23432dd remove test
95a4ca6 remove todo comment
379d37a remove unnecessary function
0822a92 rename
609f3f4 rename Sha to parent now that we're also considering stash entries
9f71c8d rename Status to PatchStatus
9c7e409 rename arg
fcdc017 rename context file
146722b rename to SelectedLineIdx
f858c8e rename to make way for a generic function name
08e039b return nil when no file selected
55e6366 run task for appropriate view
364bdcf safer getting of branch
66bd86b set keybindings after initialising views
28ba142 set minimum confirmation box width
2915134 show file statuses in commit files view
41df63c show when building patch
23299f8 simplify patch modifier interface
9b42cd2 slightly better
fd8a455 small things
b51ad4f softcode cyclable views
d1a7c72 some more changes
7561f5a some more standardisation for diffing
dbf6bb5 some more things
2855b5b standardise diffmode
ed4574b standardise getting selected item
a59ac06 statically define context keys
50d5b9e status view
9a2dc3f stop crash due to context stack not being initialized
8be970e stop loading all the diffs at once now that we load them as we go
48f1ada stop logging stack
bea2ae5 stop pulling in general
35b7242 support accordian mode i.e. expanding focused side panels
44ee28b support alacritty
43d891b support creating patches from files in diff mode
e290710 support drilling down into the files of a diff
3c944e0 support force push after failure
be658e7 support multi word editor config
fcd5aea support multiple modes of git pull
4f4bb40 support opening lazygit outside a git directory
63209ef try allowing creating branches off the stash too
88ae550 unused method
c44ee71 update cheatsheet
8ff7407 update config
1c0da29 update naming
f601108 update naming to refer to context
628404e use actual keys
bc410d8 use camelCase
f876d8f use constants
94601b4 use context to return to the correct view
eb5e54e use interface for panel state rather than pointer
bfaf1c4 use remote prefixed branch name when merging remote branch
1189c2f we've now flipped the boolean
fa2a385 when in the remote branches view, prefill name for creating branch off of remote branch
26f8008 when toggling files reset patch manager if patch ends up empty
v0.20.9
Changelog
96f821b fix TestGitCommandCommit test
dbf042b goreleaser: fix deprecation and comment
964e387 revert changes to 'os_default_platform.go' and 'os_windows.go'
5dfa26e use strconv for quoting in 'GitCommand.Commit' and 'OSCommand.ShellCommandFromString' use raw strings for the escaped quotes in 'os_default_platform.go' and 'os_windows.go'