Karl Fogel at
I hate how 'git add' means both "stage changes in a file that's already under version control" and "add a file to version control".
Failure mode: You have 'secrets' and 'secrets.tmpl', you edit the latter, but due to shell auto-complete you 'git add' the former, commit, & push.