Allow mirroring repos instead of full checkouts

If we're just backing up repos, then the working directory associated
with a checkout is wasted space.
Fix method calls with debug option
Mirroring adds .git to the directory
Use rev-parse to get the current commit

This is lower level, but more direct than twisting the log to our needs.
Fix commit status for mirrored repos

When the repo is mirrored, all the remote branches show up as if they're
local. Specifying origin/ in this case causes an error.