diff options
Diffstat (limited to 'Documentation/git-mktag.txt')
-rw-r--r-- | Documentation/git-mktag.txt | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/Documentation/git-mktag.txt b/Documentation/git-mktag.txt new file mode 100644 index 0000000..466a697 --- /dev/null +++ b/Documentation/git-mktag.txt @@ -0,0 +1,66 @@ +git-mktag(1) +============ + +NAME +---- +git-mktag - Creates a tag object with extra validation + + +SYNOPSIS +-------- +[verse] +'git mktag' + +DESCRIPTION +----------- + +Reads a tag contents on standard input and creates a tag object. The +output is the new tag's <object> identifier. + +This command is mostly equivalent to linkgit:git-hash-object[1] +invoked with `-t tag -w --stdin`. I.e. both of these will create and +write a tag found in `my-tag`: + + git mktag <my-tag + git hash-object -t tag -w --stdin <my-tag + +The difference is that mktag will die before writing the tag if the +tag doesn't pass a linkgit:git-fsck[1] check. + +The "fsck" check done mktag is stricter than what linkgit:git-fsck[1] +would run by default in that all `fsck.<msg-id>` messages are promoted +from warnings to errors (so e.g. a missing "tagger" line is an error). + +Extra headers in the object are also an error under mktag, but ignored +by linkgit:git-fsck[1]. This extra check can be turned off by setting +the appropriate `fsck.<msg-id>` varible: + + git -c fsck.extraHeaderEntry=ignore mktag <my-tag-with-headers + +OPTIONS +------- + +--strict:: + By default mktag turns on the equivalent of + linkgit:git-fsck[1] `--strict` mode. Use `--no-strict` to + disable it. + +Tag Format +---------- +A tag signature file, to be fed to this command's standard input, +has a very simple fixed format: four lines of + + object <hash> + type <typename> + tag <tagname> + tagger <tagger> + +followed by some 'optional' free-form message (some tags created +by older Git may not have `tagger` line). The message, when it +exists, is separated by a blank line from the header. The +message part may contain a signature that Git itself doesn't +care about, but that can be verified with gpg. + +GIT +--- +Part of the linkgit:git[1] suite |