The new structure of tag objects is documented. Also some much-needed cleanup is done. E.g. remove the paragraph on the 8kB limit, since this limit was removed ages ago. Signed-off-by: Johan Herland <johan@xxxxxxxxxxx> --- Documentation/git-mktag.txt | 42 ++++++++++++++++++++++++++++++------------ 1 files changed, 30 insertions(+), 12 deletions(-) diff --git a/Documentation/git-mktag.txt b/Documentation/git-mktag.txt index 2860a3d..411105d 100644 --- a/Documentation/git-mktag.txt +++ b/Documentation/git-mktag.txt @@ -8,40 +8,58 @@ git-mktag - Creates a tag object SYNOPSIS -------- -'git-mktag' < signature_file +[verse] +'git-mktag' < tag_data_file + DESCRIPTION ----------- -Reads a tag contents on standard input and creates a tag object +Reads tag object data on standard input and creates a tag object that can also be used to sign other objects. The output is the new tag's <object> identifier. -Tag Format + +DISCUSSION ---------- -A tag signature file has a very simple fixed format: three lines of +Tag object data has the following format +[verse] object <sha1> type <typename> - tag <tagname> + tag <tagname> (optional) + keywords <keywords> (optional) + tagger <committer> + +followed by a blank line and a free-form message and an optional signature +that git itself doesn't care about, but that may be verified with gpg or +similar. -followed by some 'optional' free-form signature that git itself -doesn't care about, but that can be verified with gpg or similar. +In the above listing, `<sha1>` represents the object pointed to by this tag, +`<typename>` is the type of the object pointed to ("tag", "blob", "tree" or +"commit"), `<tagname>` is the name of this tag object (and must correspond +to the name of the corresponding ref (if any) in `.git/refs/`). `<keywords>` +is a comma-separated list of keywords associated with this tag object, and +`<committer>` holds the "`name <email>`" of the tag creator and timestamp +of when the tag object was created (analogous to "committer" in commit +objects). -The size of the full object is artificially limited to 8kB. (Just -because I'm a lazy bastard, and if you can't fit a signature in that -size, you're doing something wrong) +If "`tag <tagname>`" is omitted, <tagname> defaults to the empty string. +If "`keywords <keywords>`" is omitted, <keywords> defaults to "`tag`" if +a <tagname> was given, "`note`" otherwise. Author ------ Written by Linus Torvalds <torvalds@xxxxxxxx> + Documentation -------------- -Documentation by David Greaves, Junio C Hamano and the git-list <git@xxxxxxxxxxxxxxx>. +Documentation by Johan Herland, David Greaves, Junio C Hamano and the +git-list <git@xxxxxxxxxxxxxxx>. + GIT --- Part of the gitlink:git[7] suite - -- 1.5.2 - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html