]>
Commit | Line | Data |
---|---|---|
2cf565c5 DG |
1 | git-mktag(1) |
2 | ============ | |
2cf565c5 DG |
3 | |
4 | NAME | |
5 | ---- | |
18430ed3 | 6 | git-mktag - Creates a tag object with extra validation |
2cf565c5 DG |
7 | |
8 | ||
9 | SYNOPSIS | |
10 | -------- | |
7791a1d9 | 11 | [verse] |
33e8fc87 | 12 | 'git mktag' |
2cf565c5 | 13 | |
06ce7915 ÆAB |
14 | OPTIONS |
15 | ------- | |
16 | ||
17 | --strict:: | |
18 | By default mktag turns on the equivalent of | |
19 | linkgit:git-fsck[1] `--strict` mode. Use `--no-strict` to | |
20 | disable it. | |
21 | ||
2cf565c5 DG |
22 | DESCRIPTION |
23 | ----------- | |
c1bdacf9 | 24 | |
18430ed3 ÆAB |
25 | Reads a tag contents on standard input and creates a tag object. The |
26 | output is the new tag's <object> identifier. | |
27 | ||
28 | This command is mostly equivalent to linkgit:git-hash-object[1] | |
29 | invoked with `-t tag -w --stdin`. I.e. both of these will create and | |
30 | write a tag found in `my-tag`: | |
31 | ||
32 | git mktag <my-tag | |
33 | git hash-object -t tag -w --stdin <my-tag | |
34 | ||
35 | The difference is that mktag will die before writing the tag if the | |
acf9de4c ÆAB |
36 | tag doesn't pass a linkgit:git-fsck[1] check. |
37 | ||
38 | The "fsck" check done mktag is stricter than what linkgit:git-fsck[1] | |
39 | would run by default in that all `fsck.<msg-id>` messages are promoted | |
40 | from warnings to errors (so e.g. a missing "tagger" line is an error). | |
41 | ||
42 | Extra headers in the object are also an error under mktag, but ignored | |
acfc0133 ÆAB |
43 | by linkgit:git-fsck[1]. This extra check can be turned off by setting |
44 | the appropriate `fsck.<msg-id>` varible: | |
45 | ||
46 | git -c fsck.extraHeaderEntry=ignore mktag <my-tag-with-headers | |
c1bdacf9 DG |
47 | |
48 | Tag Format | |
49 | ---------- | |
33e8fc87 JH |
50 | A tag signature file, to be fed to this command's standard input, |
51 | has a very simple fixed format: four lines of | |
c1bdacf9 | 52 | |
f59b61dc | 53 | object <hash> |
c1bdacf9 DG |
54 | type <typename> |
55 | tag <tagname> | |
6cfec036 | 56 | tagger <tagger> |
c1bdacf9 | 57 | |
6cfec036 | 58 | followed by some 'optional' free-form message (some tags created |
9ce0fc33 | 59 | by older Git may not have `tagger` line). The message, when it |
6cfec036 | 60 | exists, is separated by a blank line from the header. The |
2de9b711 | 61 | message part may contain a signature that Git itself doesn't |
6cfec036 | 62 | care about, but that can be verified with gpg. |
2cf565c5 | 63 | |
2cf565c5 DG |
64 | GIT |
65 | --- | |
9e1f0a85 | 66 | Part of the linkgit:git[1] suite |