SYNOPSIS

git mktag

DESCRIPTION

標準入力でタグの内容を読み取り、タグオブジェクトを作成します。 出力は、新しいタグの <object> IDです。

このコマンドは、 git-hash-object(1)-t tag -w --stdin オプションで呼び出すのとほとんど同じです。例:以下は両方とも、 my-tag ファイル中からタグの記述を見つけ、見つけたタグの記述からをタグオブジェクトを作成して書き込みます。

git mktag <my-tag
git hash-object -t tag -w --stdin <my-tag

git-hash-object(1) の違いは、タグが git-fsck(1) チェックに合格しない場合、タグを書き込む前にmktagが停止することです。

mktagで実行される「fsck」チェックは、すべての fsck.<msg-id> メッセージが警告からエラーに昇格されるという点で git-fsck(1) がデフォルトで実行するものよりも厳密(strict)です(たとえば、tagger行の欠落はエラーです)。

オブジェクトの余分なヘッダーもmktagではエラーになりますが、 git-fsck(1) では無視されます。この追加のチェックは、適切な fsck.<msg-id> 変数を設定することでオフにできます:

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

OPTIONS

--strict

デフォルトでは、mktagは git-fsck(1)--strict モードに相当するものをオンにします。無効にするには、 --no-strict を使用します。

Tag Format

このコマンドの標準入力に供給されるタグ署名ファイル(tag signature file)は、非常に単純な固定形式です。それは以下の4行からなります。

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

この後ろにいくつかのオプションの自由形式のメッセージが続きます(古いGitによって作成された一部のタグには tagger 行がない場合があります)。メッセージが存在する場合は、ヘッダーとは空白行で区切られます。メッセージ部分には、Git自体は気にしない署名が含まれている場合がありますが、それはgpgで確認できます。

GIT

Part of the git(1) suite