Update message for error during push

When attempting to update a reference on a remote during push, and the
reference on the remote refers to a commit that does not exist locally,
then we should report a more clear error message.
Merge pull request #2713 from libgit2/jamill/push_fetch_first

Update message for error during push