{"thread":{"id":"21365","subject":"gti push interface inconsistency","startedAt":"2009-10-26T22:23:44Z","lastAt":"2009-10-27T04:47:59Z","messageCount":3,"participants":["Eugene Sajine","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"125957","messageId":"76c5b8580910261523s51ac22b5y624ec3502e8fed67@mail.gmail.com","threadId":"21365","inReplyTo":null,"subject":"gti push interface inconsistency","fromName":"Eugene Sajine","fromEmail":"euguess@gmail.com","sentAt":"2009-10-26T22:23:44Z","receivedAt":"2009-10-26T22:23:44Z","isPatch":false,"sender":{"key":"euguess@gmail.com","avatar":null},"body":"Hi,\n\nI have a question:\n\nWhy I can't do\n\n$ git push my_tag\n\nIt will fail because the remote is not specified, even if there is\nonly one origin remote\n\nbut can do\n\n$ git push --tags\n\nand it will push tags to origin...\n\nThanks,\nEugene\n"},{"id":"125967","messageId":"7veiopd7gs.fsf@alter.siamese.dyndns.org","threadId":"21365","inReplyTo":"76c5b8580910261523s51ac22b5y624ec3502e8fed67@mail.gmail.com","subject":"Re: gti push interface inconsistency","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2009-10-27T00:08:19Z","receivedAt":"2009-10-27T00:08:19Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Eugene Sajine <euguess@gmail.com> writes:\n\n> I have a question:\n>\n> Why I can't do\n>\n> $ git push my_tag\n>\n> It will fail because the remote is not specified, even if there is\n> only one origin remote\n\nProbably because git is not smart enough to understand the human language\nto notice 't' 'a' 'g' is a tag and cannot be a remote name spelled\nincorrectly, or git cannot read your mind and find out that you spelled\na name of the remote correctly but forgot to add the remote first.\n"},{"id":"125989","messageId":"76c5b8580910262147w4e3ef7a9k8b65f586e893f4fd@mail.gmail.com","threadId":"21365","inReplyTo":"7veiopd7gs.fsf@alter.siamese.dyndns.org","subject":"Re: gti push interface inconsistency","fromName":"Eugene Sajine","fromEmail":"euguess@gmail.com","sentAt":"2009-10-27T04:47:59Z","receivedAt":"2009-10-27T04:47:59Z","isPatch":false,"sender":{"key":"euguess@gmail.com","avatar":null},"body":">\n> Probably because git is not smart enough to understand the human language\n> to notice 't' 'a' 'g' is a tag and cannot be a remote name spelled\n> incorrectly, or git cannot read your mind and find out that you spelled\n> a name of the remote correctly but forgot to add the remote first.\n>\n\n;)\ndid you mean It is not smart enough yet?\n\nMy question was caused only by the fact that in both situations same\nobject type is transmitted to the origin repo. As understand that it\nwas done this way  in order to avoid specifying keys for remote...\nI.e. \"git push origin master\" is kinda easier then something like \"git\npush -r origin master\" (-r for remote).\nBut if for \"git push --tags\" the remote is not important (uses origin\nby default) why it is important for \"git push my_tag\" or for \"git push\norigin master\"?\n\nDo you think\n\n$ git push master\n\nWhich would default to origin have a chance to exist? (I would vote for this)\nOr the correct aproach is to have\n\n$ git push origin --tags\n\nIMHO, In any case the push operation interface should be consistent.\nElse it is a bit confusing (untill you didn't step on it and didn't\nlearn the difference).\n\nBest regards,\nEugene\n"}]}