简体中文 ▾ 主题 ▾ 最新版本 ▾ git-mktag 最后更新于 2.43.0

名称

git-mktag - 创建带有额外验证的标签对象

概要

git mktag

描述

从标准输入读取标签内容并创建标签对象。输出是新标签的 <object> 标识符。

此命令大部分等同于使用 -t tag -w --stdin 调用的 git-hash-object[1]。例如,这两种方式都将创建并写入在 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”行会被视为错误)。

对象中的额外头部在 mktag 下也是错误,但会被 git-fsck[1] 忽略。可以通过设置相应的 fsck.<msg-id> 变量来关闭此额外检查

git -c fsck.extraHeaderEntry=ignore mktag <my-tag-with-headers

选项

--strict

默认情况下,mktag 会启用等同于 git-fsck[1] --strict 模式的功能。使用 --no-strict 可以禁用它。

标签格式

标签签名文件(将作为此命令的标准输入)具有一个非常简单的固定格式:四行

object <hash>
type <typename>
tag <tagname>
tagger <tagger>

后面跟着一些可选的自由格式消息(一些由旧版本 Git 创建的标签可能没有 tagger 行)。如果存在消息,它会与头部通过一个空行分隔。消息部分可能包含 Git 本身不关心的签名,但可以使用 gpg 进行验证。

GIT

Git[1] 套件的一部分

scroll-to-top