This would be good for rustpkg so it doesn't have to shell out to invoke git. I'll do this if no one else picks it up, but it could be a good starter project for somebody.