Subject: Re: [PATCHv3] git-tag man: when to use lightweight or annotated tags

From: Daniele Segato <[email-masked]>
Date: Wed, 07 Aug 2013 14:32:55 +0200

On 07/29/2013 08:02 PM, Daniele Segato wrote:
> On 07/26/2013 09:36 PM, Jonathan Nieder wrote:
>> Eventually the description section should probably be tweaked to start
>> by explaining what the command is actually for. ;-)
>
> Elaborating from this suggestion you gave me I tried to
> rewrite/rearrange the description moving things around a little.
>
> Here's what I've come out with, what do you think about it?
>
>
>
> DESCRIPTION
> -----------
>
> A tag is a non-mutable reference name (in `refs/tags/`) to an object
> (usually a commit).
>
> If one of `-d/-l/-v` options is given the command will delete, list or
> verify tags.
>
> If one of `-a`, `-s`, or `-u <key-id>` is passed, the command
> creates both the reference and a 'tag' object containing a creation
> date, the tagger name and e-mail, a tag message and an optional GnuPG
> signature.  Unless
> `-m <msg>` or `-F <file>` is given, an editor is started for the user to
> type in the tag message.
>
> Otherwise just a tag reference for the SHA-1 object name of the commit
> object is created (i.e. a lightweight tag).
>
> Unless `-f` is given, the named tag must not yet exist.
>
> If `-m <msg>` or `-F <file>` is given and `-a`, `-s`, and `-u <key-id>`
> are absent, `-a` is implied.
>
> A GnuPG signed tag object will be created when `-s` or `-u
> <key-id>` is used.  When `-u <key-id>` is not used, the
> committer identity for the current user is used to find the
> GnuPG key for signing.  The configuration variable `gpg.program`
> is used to specify custom GnuPG binary.
>
> Tag objects (created with `-a`, `s`, or `-u`) are called "annotated"
> tags; whereas a "lightweight" tag is simply a name for an object
> (usually a commit object).
>
> Annotated tags are meant for release while lightweight tags are meant
> for private or temporary object labels. For this reason, some git
> commands for naming objects (like `git describe`) will ignore
> lightweight tags by default.

I suppose there's no interest in this anymore

thanks anyway,
Regards,
Daniele Segato