Perform diff with args before cd

Pass arguments to git diff. If the diff is performed after cd then any
paths given on the command line will be wrong.

Need to verify that only one commit is given and --staged is not.