threads / discuss / 20080

How can I tell if a tag has been pushed, or not?

Subject: How can I tell if a tag has been pushed, or not?

## tl;dr

4 messages between Jul 10, 2009 and Jul 11, 2009.

replies: 3people: 3as markdown or json

layer· Jul 10, 2009, 17:43 UTC · lore
Here's the problem:

I expect that users, in their own private repos, will from time to time create tags that should not be pushed. Sometimes, tags that should be pushed will be created.

I could require that the "public" tags follow a specific convention (start with "release", or something). Then, the scripts all my developers use could use that and push only certain tags. However, over time there could be a large number of them. It seems undesirable to push each tag each time a push is done. So, how can I tell if a tag has already been pushed? Is there a way?

Thanks.
Alex Riesen· Jul 10, 2009, 19:28 UTC · re: layer · lore

Re: How can I tell if a tag has been pushed, or not?

On Fri, Jul 10, 2009 at 19:43, layer<layer@known.net> wrote:
Show 12 quoted lines
> Here's the problem:
>
> I expect that users, in their own private repos, will from time to
> time create tags that should not be pushed.  Sometimes, tags that
> should be pushed will be created.
>
> I could require that the "public" tags follow a specific convention
> (start with "release", or something).  Then, the scripts all my
> developers use could use that and push only certain tags.  However,
> over time there could be a large number of them.  It seems undesirable
> to push each tag each time a push is done.  So, how can I tell if a
> tag has already been pushed?  Is there a way?

git push does not push any tags by default. You either have to specify them explicitly or add --tags (all tags). Maybe that is enough?

Otherwise, there is always git ls-remote 'tags/*'...
layer· Jul 10, 2009, 20:02 UTC · re: Alex Riesen · lore

Re: How can I tell if a tag has been pushed, or not?

Alex Riesen <raa.lkml@gmail.com> wrote:
Show 16 quoted lines
>> On Fri, Jul 10, 2009 at 19:43, layer<layer@known.net> wrote:
>> > Here's the problem:
>> >
>> > I expect that users, in their own private repos, will from time to
>> > time create tags that should not be pushed.  Sometimes, tags that
>> > should be pushed will be created.
>> >
>> > I could require that the "public" tags follow a specific convention
>> > (start with "release", or something).  Then, the scripts all my
>> > developers use could use that and push only certain tags.  However,
>> > over time there could be a large number of them.  It seems undesirable
>> > to push each tag each time a push is done.  So, how can I tell if a
>> > tag has already been pushed?  Is there a way?
>> 
>> git push does not push any tags by default. You either have to
>> specify them explicitly or add --tags (all tags). Maybe that is enough?
No, I already knew about that.
>> Otherwise, there is always git ls-remote 'tags/*'...
This is what I needed.  Thanks.
Andreas Ericsson· Jul 11, 2009, 13:44 UTC · re: layer · lore

Re: How can I tell if a tag has been pushed, or not?

layer wrote:
Show 13 quoted lines
> Here's the problem:
> 
> I expect that users, in their own private repos, will from time to
> time create tags that should not be pushed.  Sometimes, tags that
> should be pushed will be created.
> 
> I could require that the "public" tags follow a specific convention
> (start with "release", or something).  Then, the scripts all my
> developers use could use that and push only certain tags.  However,
> over time there could be a large number of them.  It seems undesirable
> to push each tag each time a push is done.  So, how can I tell if a
> tag has already been pushed?  Is there a way?
> 

At $dayjob we only allow annotated tags to be pushed. The default update hook works like a charm for that. All private tags are kept un-annotated and can therefore never be pushed by accident.

/Andreas

← back to recent threads