Re: [PATCH] push: don't guess at qualifying remote refs on deletion
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:54:12
Jeff King [off-list ref] writes:
Instead, we can just be more succinct and say "we can't delete this because we couldn't find it". So before: $ git push origin :bogus error: unable to push to unqualified destination: bogus The destination refspec neither matches an existing ref on the remote nor begins with refs/, and we are unable to guess a prefix based on the source ref. error: failed to push some refs to '$URL' and now: $ git push origin :bogus error: unable to delete 'bogus': remote ref does not exist error: failed to push some refs to '$URL'
This is telling a truth ($GIT_DIR/refs/bogus does not exist) but not
the whole truth; while I tend to agree that it is better than the
original (especially with ", and we are unable to guess..." part),
given that the above request would delete refs/tags/bogus or
refs/heads/bogus if they existed on the "origin", I am a bit worried
that it may send an incorrect message to novice users.
unable to delete 'bogus': no branch or tag with that name
might allay my worries, but I am not extremely happy with that
wording, either.
I think this would help. I used "remote ref does not exist" because that is the simplest explanation for the user. However, given that we will try to push a fully qualified ref that does not exist, a more accurate message might "destination refspec did not match" or something similar. I prefer the former, though, as it less arcane.
Yeah, I do understand why you phrased that way, but still..