Magit

Computing #emacs #tech

You may be averse to GUIs for Git. Because they don't have feature parity with the command-line version. They cover only a subset of the possible actions, and so at some point you have to "drop into the command line" anyway.

Magit is an exception.

  • As of 2020 it's the only porcelain that boasts to be effectively complete, i.e. you never have to "drop into the command line".
  • It's discoverable, so it requires you to search the web less for tricks. What you may still search for is the theory behind concepts like "rebase" or "stash", but not the how-to.
  • It doesn't have a clunky UI as is typical for GUI apps, where hotkeys only exist for a subset of the things you can click. Instead, it's keyboard-driven, and bashing out a complex git command is usually faster with Magit than the command line.
  • It does not overlay its own metaphors like an extra layer of abstraction, it exposes Git's own metaphors.
  • For every command you're about to execute, you can reveal what exact Git command-line expression it maps to, in case you're curious.
Created (2 years ago)