简体中文 ▾
Localized versions of git-mktag manual
Topics ▾
Email
Latest version
▾
git-mktag last updated in 2.43.0
Changes in the git-mktag manual
Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.43.0 11/20/23
- 2.42.1 no changes
- 2.42.0 08/21/23
- 2.32.1 → 2.41.0 no changes
- 2.32.0 06/06/21
- 2.31.1 → 2.31.8 no changes
- 2.31.0 03/15/21
描述
读取标准输入中的标签内容并创建一个标签对象。输出是新标签的 <object> 标识符。
这个命令主要等同于 git-hash-object[1] 与 -t tag -w -stdin
一起调用。也就是说,这两个命令都会创建并写入一个在 my-tag
中找到的标签:
git mktag <my-tag git hash-object -t tag -w --stdin <my-tag
不同的是,如果标签没有通过 git-fsck[1] 的检查,mktag 进程会在写入标签前结束。
mktag 的 "fsck" 检查比 git-fsck[1] 默认运行的更严格,因为所有的 fsck.<msg-id>
信息都从警告提升为错误(所以例如,缺少 "tagger" 行就是一个错误)。
Extra headers in the object are also an error under mktag, but ignored by git-fsck[1]. This extra check can be turned off by setting the appropriate fsck.<msg-id>
variable:
git -c fsck.extraHeaderEntry=ignore mktag <my-tag-with-headers
选项
- --strict
-
默认情况下,mktag 打开了相当于 git-fsck[1] 的
--strict
模式。使用--no-strict
来禁用它。
Tag Format
将被送入该命令的标准输入的标签签名文件有一个非常简单的固定格式:四行的
object <hash> type <typename> tag <tagname> tagger <tagger>
后面是一些 "可选的" 自由形式的信息(一些由旧版 Git 创建的标签可能没有 tagger
行)。 当信息存在时,会用一行空行与标头分开。 消息部分可能包含一个 Git 自己并不关心的签名,但可以用 gpg 验证。
GIT
属于 git[1] 文档