git/list[1] front-page[2] threads[3] people[4] search[5] about
 

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

From
Marc Branchaud <marcnarc@xiplink.com>
Date
Jul 26, 2013, 14:51 UTC
Message-ID
<51F28D08.8050507@xiplink.com>
In-Reply-To
<51F2375E.1080003@gmail.com>
On 13-07-26 04:46 AM, Daniele Segato wrote:
> From 34fdcb56e5784699ffa327ebfcd2c5cd99b61d2d Mon Sep 17 00:00:00 2001
> From: Daniele Segato <daniele.segato@gmail.com>
> Date: Thu, 25 Jul 2013 15:33:18 +0200
> Subject: [PATCH] git-tag man: when to use lightweight or annotated tags

When sending a patch to the list it's not necessary to include these headers, as the git tools will extract them from the email itself.

Also, when sending a revision to a previously posted patch it's customary to include a revision number, e.g. "[PATCHv2]".

Show 18 quoted lines
> stress the difference between the two with suggestion on when the user
> should use one in place of the other.
> 
> Signed-off-by: Daniele Segato <daniele.segato@gmail.com>
> ---
>  Documentation/git-tag.txt |    7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/git-tag.txt b/Documentation/git-tag.txt
> index 22894cb..5c6284e 100644
> --- a/Documentation/git-tag.txt
> +++ b/Documentation/git-tag.txt
> @@ -26,7 +26,7 @@ to delete, list or verify tags.
>  Unless `-f` is given, the named tag must not yet exist.
> 
>  If one of `-a`, `-s`, or `-u <key-id>` is passed, the command
> -creates a 'tag' object, and requires a tag message.  Unless
> +creates a 'tag' object called 'Annotated tag', and requires a tag message.
1) Don't capitalize "annotated" -- it's not capitalized anywhere else in the
text.  The same goes for "lightweight".
2) I find the phrasing here awkward.  The important thing to convey is that
"annotated tag" is a synonym for "tag object".  The proposed text implies
that there can be other kinds of tag objects that are not annotated tags, but
I don't think that's true.  I've mulled over different ways of introducing
the "annotated tag" term here, but I can't come up with a succinct way to do
it.  I think it's better to just introduce the term later.
Show 15 quoted lines
> Unless
>  `-m <msg>` or `-F <file>` is given, an editor is started for the user to type
>  in the tag message.
> 
> @@ -36,6 +36,11 @@ are absent, `-a` is implied.
>  Otherwise just a tag reference for the SHA-1 object name of the commit
> object is
>  created (i.e. a lightweight tag).
> 
> +'Annotated' and 'Lightweight' tags are not the same thing for git and you
> shouldn't
> +mix them up. Annotated tags are meant for release while lightweight tags are
> +meant for private or temporary object labels. Most git commands only consider
> +Annotated tags by default.
> +
I'm sorry, but I feel this misses the mark.

It's redundant to say the tag types are not the same thing, since the fact that they have different names already implies that. Also, to me the admonition "you shouldn't mix them up" is just a scary warning that conveys no helpful information.

Furthermore, I think simply stating that the tag types are meant for particular uses without explaining why is too glib. Although it may be natural in your circumstances to think of the tag types rigidly, I do not think that's true for all git users and I don't think the documentation should assume there's a One True Way to use tags.

The text should give readers enough information to decide for themselves how they want to use the different types of tags. That's why I included the annotated tag's contents in my suggestion, so that readers could figure out which tag type best meets their needs.

What you've proposed is a step in the right direction, but I think you need to go further.

		M.
Previous: Daniele SegatoNext: Daniele Segato
Message 7 of 23 in “git tag usability issue: Lightweight vs Annotated confusion for the end user (ex. git describe default)”
  1. Daniele SegatoJul 24, 2013
  2. Junio C HamanoJul 24, 2013
  3. git-tag man: when to use lightweight or annotated tagsDaniele Segato, Jul 25, 2013
  4. Marc BranchaudJul 25, 2013
  5. Daniele SegatoJul 26, 2013
  6. Daniele SegatoJul 26, 2013
  7. Marc BranchaudJul 26, 2013
  8. Daniele SegatoJul 26, 2013
  9. Daniele SegatoJul 26, 2013
  10. Jeff KingJul 26, 2013
  11. Jonathan NiederJul 26, 2013
  12. Daniele SegatoJul 29, 2013
  13. Daniele SegatoAug 7, 2013
  14. Marc BranchaudJul 26, 2013
  15. Junio C HamanoJul 29, 2013
  16. Daniele SegatoJul 29, 2013
  17. Daniele SegatoJul 27, 2013
  18. Philip OakleyJul 27, 2013
  19. Stefan BellerJul 27, 2013
  20. Daniele SegatoJul 29, 2013
  21. Marc BranchaudJul 26, 2013
  22. Daniele SegatoJul 29, 2013
  23. Daniele SegatoJul 25, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.