List contents of the current directory, marked according to git status.
Staged files are green and marked with ^.
Changed but unstaged files are red, marked with *.
Untracked files are yellow, marked with ?.
Directories are blue, but if they contain staged, changed or untracked files they're marked accordingly.
Run this:
git config --global alias.ls '!/path/to/git-ls'
Then, you can run git ls from inside any git repo.
It's written in Python (runs as either Python2 or Python3). Should work on anything vaguely Unixy. MIT licensed.