Running diff from commit window will now show changes since HEAD

By default, running “git diff” shows local changes that have not yet been staged, so if the user had already added (a version of) the file to the staging area, the diff button would only show changes done since that, which is misleading (as we commit to HEAD not the staging area).

A minor issue exists for newly initialized repositories without a HEAD to diff against, here the diff command actually fails, but we ignore the return code and show a blank diff.