threads / discuss / 21365

gti push interface inconsistency

Subject: gti push interface inconsistency

## tl;dr

3 messages between Oct 26, 2009 and Oct 27, 2009.

replies: 2people: 2as markdown or json

Eugene Sajine· Oct 26, 2009, 22:23 UTC · lore
Hi,
I have a question:
Why I can't do
$ git push my_tag

It will fail because the remote is not specified, even if there is only one origin remote

but can do
$ git push --tags
and it will push tags to origin...

Thanks, Eugene

Junio C Hamano· Oct 27, 2009, 00:08 UTC · re: Eugene Sajine · lore

Re: gti push interface inconsistency

Eugene Sajine <euguess@gmail.com> writes:
Show 8 quoted lines
> I have a question:
>
> Why I can't do
>
> $ git push my_tag
>
> It will fail because the remote is not specified, even if there is
> only one origin remote

Probably because git is not smart enough to understand the human language to notice 't' 'a' 'g' is a tag and cannot be a remote name spelled incorrectly, or git cannot read your mind and find out that you spelled a name of the remote correctly but forgot to add the remote first.

Eugene Sajine· Oct 27, 2009, 04:47 UTC · re: Junio C Hamano · lore

Re: gti push interface inconsistency

Show 6 quoted lines
>
> Probably because git is not smart enough to understand the human language
> to notice 't' 'a' 'g' is a tag and cannot be a remote name spelled
> incorrectly, or git cannot read your mind and find out that you spelled
> a name of the remote correctly but forgot to add the remote first.
>

;) did you mean It is not smart enough yet?

My question was caused only by the fact that in both situations same object type is transmitted to the origin repo. As understand that it was done this way in order to avoid specifying keys for remote... I.e. "git push origin master" is kinda easier then something like "git push -r origin master" (-r for remote). But if for "git push --tags" the remote is not important (uses origin by default) why it is important for "git push my_tag" or for "git push origin master"?

Do you think
$ git push master

Which would default to origin have a chance to exist? (I would vote for this) Or the correct aproach is to have

$ git push origin --tags

IMHO, In any case the push operation interface should be consistent. Else it is a bit confusing (untill you didn't step on it and didn't learn the difference).

Best regards, Eugene

← back to recent threads