Make git status detection less fragile
git status --porcelain output is guaranteed not to change across versions.
If there are no changes then there is no output.
Merge branch 'develop'

* develop:
  Add a few more git aliases
Add .py to .gitattributes and sort in alpha order