Don't reset when target is missing

If the target repository clone does not exist (when ^C was pressed, for
example) then the `cd` command will fail, but the `git reset` will still
be run. This will reset the current working dir from which `rake` was
ran to be reset to `ref`. This commit keeps that from happening.
Don't use master branch explicitly

Previous behaviour was to use the default upstream branch which may be
different than `master`. This commit reverts back to previously defined
behaviour, allowing alternative upstream branches to be used.