[PATCH 4/6] Documentation/git-mktag: Document the changes in tag object structure
- From
Johan Herland <johan@herland.net>
- Date
- Jun 4, 2007, 00:54 UTC
- Message-ID
- <200706040254.13631.johan@herland.net>
- In-Reply-To
- <200706040251.52613.johan@herland.net>
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@herland.net> --- 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@osdl.org> + Documentation -------------- -Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>. +Documentation by Johan Herland, David Greaves, Junio C Hamano and the +git-list <git@vger.kernel.org>. + GIT --- Part of the gitlink:git[7] suite -
-- 1.5.2