`Trainer.push_to_hub` always tries to push to the Hub
# What does this PR do?

As pointed out in #15431, when a user tries to call `Trainer.push_to_hub` with the corresponding training argument set to `False`, the call fails. However, the intent of the user calling that method is clear, so we should try to honor it.

This PR makes the call succeed, as long as it's possible to create the repo from the output dir (which will fail if the repo in which the user wants to push to the Hub already exists and output dir is not a local clone).
_The documentation is not available anymore as the PR was closed or merged._