Skip to content

Releases: jesseduffield/lazygit

v0.32.2

17 Jan 08:32

Choose a tag to compare

Changelog

  • 8ca71ee add git bisect run script
  • d3a3c8d add integration test for merge conflicts resolved externally
  • ee622d0 add integration test for staging view
  • 2691477 allow sandbox mode with integration tests
  • 1c84f77 always specify upstream when pushing/pulling
  • 7a690f9 appease CI
  • 8d8bdb9 avoid deadlock in merge panel
  • ae98797 do not show branch graph when in filtering mode
  • befa356 fix bug which prevented quitting with confirm
  • 0092c9d fix bug with subprocess
  • 9903595 fix merge scroll bug
  • 595aca2 make integration test pass
  • dafac52 see if this fixes CI linting
  • cdcfeb3 stop refreshing the screen so much

v0.32.1

14 Jan 23:21

Choose a tag to compare

Changelog

  • f5b9ad8 add complex custom command integration test
  • 8263d15 fix issue where custom command would not open a menu

v0.32

13 Jan 22:06

Choose a tag to compare

Features:

  • You can now press 'o' on a commit to open it in your browser
  • We now retain the commit message you typed in the event that the commit command failed (thanks @jakobkogler)
  • You can now reword old commits from within lazygit
  • You can now create annotated tags (press 'n' in the tags panel) (thanks @fsmiamoto)
  • You can now add a signoff to your commits via the git.commit.signoff key in your config (thanks @sagikazarmark)
  • You can now specify a single colour to apply to all commit authors (thanks @Cokile)

Bug Fixes:

  • Better highlighting of lines for various terminals (thanks @Kavantix)
  • Fixed bug where we couldn't go to the bottom of the reflog panel (thanks @fsmiamoto)
  • Better support for --path arg (thanks @TicClick)
  • Fixed a bug where you couldn't create a pull request when the repo's url scheme was ssh (thanks @kawaemon)
  • We now make fewer assumptions that your main remote is named 'origin' (thanks @mbrgm)
  • Fixed some copy inconsistencies (thanks @justinsb)
  • Fixed bug where branches would appear twice in the branches panel (@escrafford)

Other:

  • Added installation instructions for funtoo linux (thanks @invakid404)

For Contributors:

  • CI now checks that the cheatsheet files are up-to-date. If it hasn't you'll need to run go run scripts/cheatsheet/main.go generate

Note from maintainer:

The codebase has grown quite a bit since its inception and it's in need of some refactoring to make future growth easier. I've wrapped up some refactoring to the internal commands package so that we've got better namespacing and separation of concerns, and I'll be shifting my gaze to the GUI package next. Once I'm happy with the structure of the code I'll start producing some documentation so that new contributors can easily get started on features and bug fixes. Many changes to the app are trivial to make but it can take a new contributor time to work out where everything lives in the code.

v0.31.4

22 Nov 10:14

Choose a tag to compare

Changelog

8abc953 Merge pull request #1581 from black-desk/translate
9c4f837 fix chinese translate
02bf6a5 fix delta again

v0.31.3

09 Nov 22:20

Choose a tag to compare

Changelog

2f45db8 fix scrolling in sub commits panel

v0.31.2

07 Nov 04:05

Choose a tag to compare

Changelog

3fb478a add tests
5d12a6b restore some code that was erroneously removed

v0.31.1

07 Nov 02:39

Choose a tag to compare

Changelog

6171690 Fix multibyte initial characters
7a464ae add graph algorithm
ccd80a0 add menu options for log stuff
f6ec7ba add some config
253504a associate random colours with authors
9989c96 better formatting
6457800 fix another issue with indentation
06ca71e fix bug
01d8274 fix commit message prefix thingo
5df0fe0 fix crash
7d94618 fix issue with indentation
f91892b fix truncation
b04b457 fix yet another issue with indentation
9a9e3d5 more consistent rendering
7561703 move author name colouring code into its own file
e122f42 only use a single initial for double sized runes
1d40d03 refactor
802cfb1 render commit graph
c96496c show author info in rebase commits
308a3b5 some more throttling stuff
2fc1498 some refactoring in anticipation of the graph feature
f704707 stream output from certain git commands in command log panel
927ee63 support aborting a merge or rebase with esc
37be9db support scrolling left and right
72bce20 support scrolling the list in the integrations app
c47c539 support user-configurable author colours

v0.31

04 Nov 21:05

Choose a tag to compare

LAZYGIT NOW SHOWS A COMMIT GRAPH!

No idea why that took so long but there you go. Some new changes:

  1. the git graph now appears when you maximise the commits panel with the + key.
  2. you can scroll horizontally with shift+H and shift+L, in case that graph gets a bit out of control
  3. you can show the whole commit graph (i.e. git log --all) via the git log menu with <c-l> in the commits panel. In that menu you can also hide/show the graph
  4. we now randomly assign colors to authors so you can easily see at a glance who authored which commits. These same colors are used in the commit graph as well
  5. you can set custom author colours in the config e.g.
gui:
  authorColors:
      'Jesse Duffield': '#fa8072' # it's not pink, it's a _faded salmon_ color

Admittedly the commits pane takes a while to load if you scroll past 300 commits so that will need to be fixed in an upcoming release.

If you have any concerns/suggestions about the changes in this release please raise an issue or start a discussion

Thanks to @Ryooooooga , @Liberatys , and @mjarkk for the help

v0.30.1

25 Oct 22:46

Choose a tag to compare

Changelog

d4ee26d fix commit message prefix thingo

v0.30

23 Oct 08:13

Choose a tag to compare

Changelog

Features:

  • many more places where suggestions are shown as you type in a prompt. For example, when:
    • searching for a file to check its history
    • checking out a branch
    • setting a remote branch to track
    • entering a custom command
  • added support for diff3 merge conflict style (thanks @Ryooooooga )
  • files in the working tree can now be filtered by staged/unstaged with (thanks @Liberatys )
  • gui language can now be set manually with gui.language config key (thanks @Dwarven )
  • cherry picked commit colour is now customisable (thanks @samburville )
  • you can now define multiple config files to merge into one another, allowing for light/dark theming without having to duplicate other configuration (thanks @mjarkk )
  • in the staging panel you can now copy the selected lines to the clipboard (thanks @Hrily )
  • jump-to-block keybindings (default 1-5) are now configurable (thanks @samburville )

Bug fixes:

  • fixed panic when resolving merge conflicts (thanks @Ryooooooga)
  • fixed issues opening files on windows (thanks @Ryooooooga)
  • fixed bug where deleting unmerged branches caused issues when not in english (thanks @Ryooooooga)
  • fixed crash when removing tracked files (thanks @Ryooooooga)
  • better support for different encoding schemes
  • patch files are now saved in temp directory to save space (thanks @Ryooooooga)
  • fixed various crashes caused by improper quotation in git commands (thanks @Ryooooooga)
  • fixed various issues with the commit message editor
  • fixed issue where the main panel scrolled back to the top whenever lazygit refreshed
  • fixed issue where pressing tab in a confirmation panel would spawn a random panel at the edge of the application
  • fixed issue where commits panel would be empty on older git versions (thanks @Ryooooooga)
  • As part of an initiative to let the git config drive of lazygit's behaviour, pull logic has been simplified so that now the git config's setting is honoured. Highly recommended: set pull.rebase = interactive and rebase.autoSquash = true so that you can see the commits yet to be rebased when midway through pulling. Note that this means the git.pull.mode lazygit config has been removed
  • --follow-tags has been removed from git push, so if you still want that you'll need to set it in your git config with pull.followTags = true

Other Changes:

  • file tree view is now shown by default. You can switch to flat view with the backtick key
  • if you hide the command log panel from within lazygit, it will stay hidden when you open lazygit again. This spares you from having to hide it manually in your lazygit config.
  • improved chinese translation (thanks @btwise and @black-desk )
  • updates to polish translation (thanks @HTD )
  • lots of new tests added for dealing with remotes (pushing, pulling, fetching, setting upstream, etc)
  • fixed some misspellings (thanks @codesoap )