Lazygit

I learned three things from Chris Coyier's article:

  1. Lazygit is a terminal UI (TUI) for Git. It is written in Go by Jesse Duffield and it works cross-platform! What stands out to me is how easy you can control it with the keyboard. Regular stage-commit-push work can be done from the files area [2] by using the keyboard shortcuts SPACE to stage, C to commit, and SHIFT P to push. The branches area [3] allows to create a new branch with N, which will also checkout the branch. Merging any branch into the current branch is done with SHIFT M, deleting any branch with D. Display the context-sensitive keybindings with ?. I installed it via homebrew on my Mac with sh brew install lazygit (there are more ways to install). From then on, when I'm in the terminal inside of a Git repo, typing the command lazygit will start the tool. It's impressive what Jesse is doing here.
    Save Time With Lazygit (Tutorial) on YouTube
  2. TUI is the abbreviation for Terminal UI.
  3. There are libraries specialized to create TUI's, like the libs mentioned on Awesome TUIs, by Justin Garrison, and charm.sh.

I've added Lazygit to my list of apps because of it's cross-platform availability and because of the keyboard navigation. It's complementing my Fork Git client.