GIT-MKTAG(1) Git Manual GIT-MKTAG(1)

git-mktag - ایجاد یک شیء تگ با اعتبارسنجی کامل داده‌ها

git mktag

محتویات یک تگ را از ورودی استاندارد می‌خواند و یک شیء تگ ایجاد می‌کند. خروجی، شناسه <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 پیش از نوشتن تگ با خطا متوقف می‌شود.

بررسی "fsck" انجام‌شده توسط mktag سخت‌گیرانه‌تر از آن چیزی است که 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 معادل حالت --strict در git-fsck(1) را فعال می‌کند. برای غیرفعال کردن آن از --no-strict استفاده کنید.

یک فایل امضای تگ، که به ورودی استاندارد این دستور داده می‌شود، قالبی بسیار ساده و ثابت دارد: چهار سطر شامل

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

که پس از آن یک پیام با قالب دلخواه به‌صورت اختیاری (optional) قرار می‌گیرد (برخی تگ‌های ایجادشده توسط نسخه‌های قدیمی‌تر گیت ممکن است سطر tagger را نداشته باشند). پیام، در صورت وجود، با یک سطر خالی از هدر جدا می‌شود. بخش پیام ممکن است شامل امضایی باشد که خود گیت به آن اهمیتی نمی‌دهد، اما می‌توان آن را با gpg اعتبارسنجی کرد.

git-tag(1), git-hash-object(1), git-fsck(1)

بخشی از مجموعه git(1)

2026-06-29 Git 2.55.0