Magit's Killer Feature #1: Commit Text Completion Based on the Diff

I’m using the Emacs git frontend (‘porcelain’) Magit for all my projects nowadays. I fire up GitUp (which is great) only to traverse the commit history visually.

Here’s one of the reasons:

With auto-completion framework company, I get completion suggestions when I type my commit message. These are based on the actual code diff of the commit.

That means when I introduce veryLongAndCumbersomeToTypeAttributeName, I can begin craft my commit message by typing this:

Introduce new attribute ver|

And company will suggest an auto-completion candidate veryLongAndCumbersomeToTypeAttributeName for the “ver” I’ve just typed.

That makes talking about the classes and attributes and functions that were modified or introduced in a commit so much simpler. No more copy and paste, no more typing mistakes.

Completion candidates starting with 'ver' for this blog post. (The blue-ish background at the bottom isn't a selection but an insertion; I have color-blind modus-themes settings enabled to not have to work with red/green there.)

“Acktshually, that’s not a Magit feature!”, someone might point out without being asked, thankyouverymuch, but that’s only part of the truth: Yes it’s 100% dependent on company being enabled to suggest completion candidates like this for me, but company wouldn’t suggest anything if Magit didn’t display the commit message next to the code diff!