'\" t .\" Title: git-annotate .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 2026-06-29 .\" Manual: Git Manual .\" Source: Git 2.55.0 .\" Language: Persian .\" .TH "GIT\-ANNOTATE" "1" "2026\-06\-29" "Git 2\&.55\&.0" "Git Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" git-annotate \- حاشیه‌نویسی خطوط فایل با اطلاعات کامیت .SH "خلاصه دستور (SYNOPSIS)" .sp .nf \fIgit annotate\fR [] [] [] [\-\-] .fi .sp .SH "توضیحات (DESCRIPTION)" .sp هر سطر از فایل داده‌شده را با اطلاعات مربوط به کامیتی که آن سطر را ایجاد کرده است، حاشیه‌نویسی می‌کند\&. همچنین به صورت اختیاری می‌تواند حاشیه‌نویسی را از یک ویرایش (revision) مشخص انجام دهد\&. .sp تنها تفاوت میان این دستور و \fBgit-blame\fR(1) در این است که آن‌ها از قالب‌های خروجی اندکی متفاوت استفاده می‌کنند؛ و این دستور صرفاً جهت سازگاری با گذشته برای پشتیبانی از اسکریپت‌های موجود، و فراهم کردن نام دستوری آشناتر برای افرادی که از سایر سیستم‌های مدیریت نسخه (SCM) می‌آیند، وجود دارد\&. .SH "گزینه‌ها (OPTIONS)" .PP \fB\-b\fR .RS 4 برای کامیت‌های مرزی (boundary commits) یک SHA\-1 خالی نشان می‌دهد\&. این مورد همچنین از طریق گزینه پیکربندی \fBblame\&.blankBoundary\fR قابل کنترل است\&. .RE .PP \fB\-\-root\fR .RS 4 با کامیت‌های ریشه به عنوان مرز رفتار نمی‌کند\&. این مورد همچنین از طریق گزینه پیکربندی \fBblame\&.showRoot\fR قابل کنترل است\&. .RE .PP \fB\-\-show\-stats\fR .RS 4 آمار اضافی را در پایان خروجی blame لحاظ می‌کند\&. .RE .PP \fB\-L\fR \fI\fR\fB,\fR\fI\fR, \fB\-L\fR \fB:\fR\fI\fR .RS 4 تنها محدوده خطوط مشخص‌شده توسط \fI\fR\fB,\fR\fI\fR، یا با عبارت باقاعده نام تابع \fI\fR را حاشیه‌نویسی می‌کند\&. می‌تواند چندین بار مشخص شود\&. محدوده‌های دارای هم‌پوشانی مجاز هستند\&. .sp \fI\fR و \fI\fR اختیاری هستند\&. \fB\-L\fR \fI\fR یا \fB\-L\fR \fI\fR\fB,\fR از \fI\fR تا انتهای فایل را در بر می‌گیرد\&. \fB\-L\fR \fB,\fR\fI\fR از ابتدای فایل تا \fI\fR را در بر می‌گیرد\&. .sp \fI\fR و \fI\fR می‌توانند یکی از این قالب‌ها را داشته باشند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fI\fR .sp اگر \fI\fR یا \fI\fR یک عدد باشد، شماره خط مطلق را مشخص می‌کند (شمارش خطوط از ۱ آغاز می‌شود)\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB/\fR\fI\fR\fB/\fR .sp این قالب از اولین خطی که با \fI\fR داده‌شده بر اساس POSIX مطابقت داشته باشد استفاده می‌کند\&. اگر \fI\fR یک عبارت باقاعده باشد، از انتهای محدوده \fB\-L\fR قبلی (در صورت وجود)، وگرنه از ابتدای فایل جستجو خواهد کرد\&. اگر \fI\fR به صورت \fB^/\fR\fI\fR\fB/\fR باشد، از ابتدای فایل جستجو خواهد کرد\&. اگر \fI\fR یک عبارت باقاعده باشد، جستجو را از خط مشخص‌شده توسط \fI\fR آغاز می‌کند\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fB+\fR\fI\fR یا \fB\-\fR\fI\fR .sp این حالت فقط برای \fI\fR معتبر است و تعدادی خط قبل یا بعد از خط مشخص‌شده توسط \fI\fR را تعیین می‌کند\&. .RE .sp اگر \fB:\fR\fI\fR به جای \fI\fR و \fI\fR داده شود، یک عبارت باقاعده است که محدوده را از اولین خط funcname که با \fI\fR مطابقت دارد تا خط funcname بعدی نشان می‌دهد\&. \fB:\fR\fI\fR از انتهای محدوده \fB\-L\fR قبلی (در صورت وجود)، وگرنه از ابتدای فایل جستجو می‌کند\&. \fB^:\fR\fI\fR از ابتدای فایل جستجو می‌کند\&. نام‌های توابع به همان شیوه‌ای تعیین می‌شوند که \fBgit\fR \fBdiff\fR هدرهای قطعه پچ (patch hunk headers) را محاسبه می‌کند (بخش \fIDefining a custom hunk\-header\fR در \fBgitattributes\fR(5) را ببینید)\&. .RE .PP \fB\-l\fR .RS 4 نمایش ویرایش (rev) طولانی (پیش‌فرض: غیرفعال)\&. .RE .PP \fB\-t\fR .RS 4 نمایش برچسب زمانی خام (پیش‌فرض: غیرفعال)\&. .RE .PP \fB\-S\fR \fI\fR .RS 4 استفاده از ویرایش‌های موجود در \fI\fR به جای فراخوانی \fBgit-rev-list\fR(1)\&. .RE .PP \fB\-\-reverse\fR \fI\fR\fB\&.\&.\fR\fI\fR .RS 4 پیمایش تاریخچه به سمت جلو به جای عقب\&. به جای نمایش ویرایشی که یک خط در آن ظاهر شده است، آخرین ویرایشی را که یک خط در آن وجود داشته نمایش می‌دهد\&. این امر نیازمند محدوده‌ای از ویرایش‌ها مانند \fI\fR\fB\&.\&.\fR\fI\fR است که در آن مسیر مورد بررسی در \fI\fR وجود داشته باشد\&. دستور \fBgit\fR \fBblame\fR \fB\-\-reverse\fR \fI\fR برای راحتی به صورت \fBgit\fR \fBblame\fR \fB\-\-reverse\fR \fI\fR\fB\&.\&.\fR\fBHEAD\fR در نظر گرفته می‌شود\&. .RE .PP \fB\-\-first\-parent\fR .RS 4 هنگام مواجهه با یک کامیت ادغام (merge commit)، تنها کامیت والد اول را دنبال می‌کند\&. این گزینه می‌تواند برای تعیین اینکه یک سطر چه زمانی به یک شاخه یکپارچه‌سازی خاص اضافه شده است، به جای اینکه چه زمانی به کل تاریخچه وارد شده، استفاده شود\&. .RE .PP \fB\-p\fR, \fB\-\-porcelain\fR .RS 4 خروجی را در قالبی طراحی‌شده برای پردازش ماشینی نمایش می‌دهد\&. .RE .PP \fB\-\-line\-porcelain\fR .RS 4 قالب porcelain را نمایش می‌دهد، اما اطلاعات کامیت را برای هر خط خروجی می‌دهد، نه فقط در اولین باری که به یک کامیت ارجاع داده می‌شود\&. مستلزم گزینه \fB\-\-porcelain\fR است\&. .RE .PP \fB\-\-incremental\fR .RS 4 نتیجه را به صورت افزایشی (incremental) در قالبی طراحی‌شده برای پردازش ماشینی نمایش می‌دهد\&. .RE .PP \fB\-\-encoding=\fR\fI\fR .RS 4 کدگذاری مورد استفاده برای خروجی نام‌های نویسندگان و خلاصه‌های کامیت را مشخص می‌کند\&. تنظیم آن روی \fBnone\fR باعث می‌شود خروجی blame داده‌های تبدیل‌نشده باشد\&. برای اطلاعات بیشتر، توضیحات مربوط به کدگذاری را در صفحه راهنمای \fBgit-log\fR(1) ببینید\&. .RE .PP \fB\-\-contents\fR \fI\fR .RS 4 حاشیه‌نویسی را با استفاده از محتوای \fI\fR انجام می‌دهد، که در صورت تعیین \fI\fR از آن ویرایش آغاز می‌شود، و در غیر این صورت از \fBHEAD\fR شروع خواهد شد\&. می‌توانید \fB\-\fR را تعیین کنید تا دستور، محتویات فایل را از ورودی استاندارد بخواند\&. .RE .PP \fB\-\-date\fR \fI\fR .RS 4 قالب مورد استفاده برای خروجی تاریخ‌ها را مشخص می‌کند\&. اگر \fB\-\-date\fR ارائه نشود، از مقدار متغیر پیکربندی \fBblame\&.date\fR استفاده می‌شود\&. اگر متغیر پیکربندی \fBblame\&.date\fR نیز تنظیم نشده باشد، از قالب iso استفاده خواهد شد\&. برای مقادیر پشتیبانی‌شده، توضیحات مربوط به گزینه \fB\-\-date\fR را در \fBgit-log\fR(1) ببینید\&. .RE .PP \fB\-\-progress\fR, \fB\-\-no\-progress\fR .RS 4 گزارش پیشرفت را در جریان خطای استاندارد فعال می‌کند، حتی اگر به یک ترمینال متصل نباشد\&. به صورت پیش‌فرض، وضعیت پیشرفت تنها زمانی گزارش می‌شود که به ترمینال متصل باشد\&. شما نمی‌توانید از \fB\-\-progress\fR همراه با \fB\-\-porcelain\fR یا \fB\-\-incremental\fR استفاده کنید\&. .RE .PP \fB\-M\fR[\fI\fR] .RS 4 خطوط جابجا شده یا کپی شده در یک فایل را تشخیص می‌دهد\&. هنگامی که یک کامیت بلوکی از خطوط را جابجا یا کپی می‌کند (به عنوان مثال، فایل اصلی دارای \fIA\fR و سپس \fIB\fR است و کامیت آن را به \fIB\fR و سپس \fIA\fR تغییر می‌دهد)، الگوریتم سنتی \fBblame\fR تنها نیمی از جابجایی را متوجه می‌شود و معمولاً خطوطی را که به بالا منتقل شده‌اند (یعنی \fIB\fR) به والد نسبت می‌دهد و خطوطی را که به پایین منتقل شده‌اند (یعنی \fIA\fR) به کامیت فرزند منتسب می‌کند\&. با این گزینه، با اجرای مراحل بازرسی اضافی، هر دو گروه از خطوط به کامیت والد نسبت داده می‌شوند\&. .sp \fI\fR اختیاری است، اما حد پایینی بر تعداد کاراکترهای حرفی‌عددی است که گیت باید به عنوان جابجایی/کپی درون یک فایل تشخیص دهد تا آن خطوط را به کامیت والد مرتبط سازد\&. مقدار پیش‌فرض ۲۰ است\&. .RE .PP \fB\-C\fR[\fI\fR] .RS 4 علاوه بر \fB\-M\fR، خطوط جابجا شده یا کپی شده از سایر فایل‌هایی را که در همان کامیت تغییر یافته‌اند تشخیص می‌دهد\&. این ویژگی زمانی مفید است که برنامه خود را بازسازماندهی کرده و کدها را بین فایل‌های مختلف جابجا می‌کنید\&. هنگامی که این گزینه دو بار داده شود، دستور همچنین به دنبال کپی‌ها از سایر فایل‌ها در کامیتی می‌گردد که فایل را ایجاد کرده است\&. هنگامی که این گزینه سه بار داده شود، دستور علاوه بر آن به دنبال کپی‌ها از سایر فایل‌ها در هر کامیتی می‌گردد\&. .sp \fI\fR اختیاری است، اما حد پایینی برای تعداد کاراکترهای حرفی‌عددی است که گیت باید به عنوان جابجایی/کپی بین فایل‌ها تشخیص دهد تا بتواند آن خطوط را به کامیت والد نسبت دهد\&. مقدار پیش‌فرض ۴۰ است\&. اگر بیش از یک گزینه \fB\-C\fR داده شود، آرگومان \fI\fR آخرین گزینه \fB\-C\fR اعمال خواهد شد\&. .RE .PP \fB\-\-ignore\-rev\fR \fI\fR .RS 4 تغییرات ایجادشده توسط آن ویرایش را هنگام انتساب منشا خطوط نادیده می‌گیرد، به گونه‌ای که گویی این تغییر هرگز رخ نداده است\&. خطوطی که توسط یک کامیت نادیده‌گرفته‌شده تغییر یافته یا اضافه شده‌اند، به کامیت قبلی که آن خط یا خطوط مجاور را تغییر داده است منتسب می‌شوند\&. این گزینه ممکن است چندین بار برای نادیده گرفتن بیش از یک ویرایش مشخص شود\&. اگر گزینه پیکربندی \fBblame\&.markIgnoredLines\fR تنظیم شده باشد، خطوطی که توسط یک کامیت نادیده‌گرفته‌شده تغییر یافته و به کامیت دیگری منتسب شده‌اند، با یک علامت ? در خروجی blame مشخص می‌شوند\&. اگر گزینه پیکربندی \fBblame\&.markUnblamableLines\fR تنظیم شده باشد، آن خطوطی که توسط یک کامیت نادیده‌گرفته‌شده دستکاری شده‌اند و نتوانسته‌ایم آن‌ها را به ویرایش دیگری منتسب کنیم، با یک علامت \fB*\fR مشخص می‌شوند\&. در حالت‌های porcelain، به ترتیب عبارات \fBignored\fR و \fBunblamable\fR در یک خط جدید چاپ می‌شوند\&. .RE .PP \fB\-\-ignore\-revs\-file\fR \fI\fR .RS 4 ویرایش‌های فهرست‌شده در \fI\fR را که باید در همان قالب \fBfsck\&.skipList\fR باشد، نادیده می‌گیرد\&. این گزینه می‌تواند تکرار شود، و این فایل‌ها پس از هر فایلی که با گزینه پیکربندی \fBblame\&.ignoreRevsFile\fR تعیین شده باشد، پردازش خواهند شد\&. یک نام فایل خالی، ""، فهرست ویرایش‌های به‌دست‌آمده از فایل‌های پردازش‌شده قبلی را پاک خواهد کرد\&. .RE .PP \fB\-\-color\-lines\fR .RS 4 حاشیه‌نویسی‌های خطوط را در قالب پیش‌فرض به رنگ‌های متفاوتی درمی‌آورد اگر از همان کامیت خط قبلی آمده باشند\&. این کار تشخیص بلوک‌های کد اضافه‌شده توسط کامیت‌های مختلف را آسان‌تر می‌کند\&. رنگ پیش‌فرض فیروزه‌ای (cyan) است و می‌تواند با استفاده از گزینه پیکربندی \fBcolor\&.blame\&.repeatedLines\fR تنظیم شود\&. .RE .PP \fB\-\-color\-by\-age\fR .RS 4 حاشیه‌نویسی‌های خطوط را در قالب پیش‌فرض بسته به قدمت خط رنگ‌آمیزی می‌کند\&. گزینه پیکربندی \fBcolor\&.blame\&.highlightRecent\fR کنترل می‌کند که برای هر بازه قدمت از چه رنگی استفاده شود\&. .RE .PP \fB\-h\fR .RS 4 نمایش پیام راهنما\&. .RE .SH "همچنین ببینید (SEE ALSO)" .sp \fBgit-blame\fR(1) .SH "گیت (GIT)" .sp بخشی از مجموعه \fBgit\fR(1)