TLDR: Visit the git-commit-ectomy guide: http://pages.charlesreid1.com/git-commit-ectomy
Consider the following completely hypothetical
Suppose you've been working for a while on your latest
invention, a brand-new whiz-bang command line
tool that's fast and solves an important problem
and you're chugging your way to the finish line.
As part of preparing to release your software tool,
you add some tests, because that's what you do.
Those tests require some data, so you add a few test
data sets, a few hundred kilobytes each, nothing fancy.
Then one day, the intern (who is just trying to be
helpful by …