'\" t .\" Title: git-for-each-ref .\" 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: English .\" .TH "GIT\-FOR\-EACH\-REF" "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-for-each-ref \- چاپ اطلاعات برای هر یک از مراجع .SH "خلاصه دستور (SYNOPSIS)" .sp .nf \fBgit\fR \fBfor\-each\-ref\fR [\fB\-\-count=\fR\fI\fR] [\fB\-\-shell\fR|\fB\-\-perl\fR|\fB\-\-python\fR|\fB\-\-tcl\fR] [(\fB\-\-sort=\fR\fI\fR)\&...] [\fB\-\-format=\fR\fI\fR] [\fB\-\-include\-root\-refs\fR] [\fB\-\-points\-at=\fR\fI\fR] [\fB\-\-merged\fR[\fB=\fR\fI\fR]] [\fB\-\-no\-merged\fR[\fB=\fR\fI\fR]] [\fB\-\-contains\fR[\fB=\fR\fI\fR]] [\fB\-\-no\-contains\fR[\fB=\fR\fI\fR]] [(\fB\-\-exclude=\fR\fI\fR)\&...] [\fB\-\-start\-after=\fR\fI\fR] [ \fB\-\-stdin\fR | (\fI\fR\fB\&...\fR)] .fi .sp .SH "توضیحات (DESCRIPTION)" .sp پیمایش روی تمامی مراجعی که با \fI\fR مطابقت دارند و نمایش آن‌ها بر اساس \fI\fR داده‌شده، پس از مرتب‌سازی آن‌ها بر اساس مجموعه \fI\fR ارائه‌شده\&. اگر \fI\fR داده شود، پس از نمایش آن تعداد مرجع متوقف می‌شود\&. مقادیر جای‌گذاری‌شده در \fI\fR را می‌توان به‌صورت اختیاری به شکل رشته‌های متنی در زبان میزبان مشخص‌شده نقل‌قول (quote) کرد تا امکان ارزیابی مستقیم آن‌ها در آن زبان فراهم شود\&. .SH "گزینه‌ها (OPTIONS)" .PP \fI\fR\&.\&.\&. .RS 4 اگر یک یا چند پارامتر \fI\fR داده شود، تنها مراجعی نشان داده می‌شوند که حداقل با یکی از الگوها مطابقت داشته باشند؛ چه با استفاده از \fBfnmatch\fR(3) یا به‌صورت تحت‌اللفظی، که در حالت دوم تطبیق یا به‌طور کامل یا از ابتدا تا یک علامت اسلش انجام می‌شود\&. .RE .PP \fB\-\-stdin\fR .RS 4 فهرست الگوها به جای فهرست آرگومان‌ها از ورودی استاندارد خوانده می‌شود\&. .RE .PP \fB\-\-count=\fR\fI\fR .RS 4 توقف پس از نمایش \fI\fR مرجع\&. .RE .PP \fB\-\-sort=\fR\fI\fR .RS 4 مرتب‌سازی بر اساس نام فیلد \fI\fR\&. برای مرتب‌سازی نزولی بر اساس مقدار، پیشوند \fB\-\fR را اضافه کنید\&. در صورت عدم تعیین، از \fBrefname\fR استفاده می‌شود\&. می‌توانید از گزینه \fB\-\-sort=\fR\fI\fR چندین بار استفاده کنید که در این صورت آخرین کلید به عنوان کلید اصلی در نظر گرفته می‌شود\&. .RE .PP \fB\-\-format\fR[\fB=\fR\fI\fR] .RS 4 رشته‌ای که متغیرهای \fB%\fR(\fBfieldname\fR) را از مرجع در حال نمایش و شیئی که به آن اشاره می‌کند جای‌گذاری می‌کند\&. علاوه بر این، عبارت متنی \fB%%\fR به صورت \fB%\fR و \fB%xx\fR \- که در آن \fBxx\fR ارقام هگزادسیمال هستند \- به صورت نویسه‌ای با کد هگز \fBxx\fR رندر می‌شود\&. برای نمونه، \fB%00\fR به \fB\e0\fR (\fINUL\fR)، \fB%09\fR به \fB\et\fR (\fITAB\fR)، و \fB%0a\fR به \fB\en\fR (\fILF\fR) تبدیل می‌شود\&. .RE .sp در صورت عدم تعیین، \fI\fR به‌طور پیش‌فرض به \fB%\fR(\fBobjectname\fR) \fBSPC\fR \fB%\fR(\fBobjecttype\fR) \fBTAB\fR \fB%\fR(\fBrefname\fR) تنظیم می‌شود\&. .PP \fB\-\-color\fR[\fB=\fR\fI\fR] .RS 4 رعایت رنگ‌های مشخص‌شده در گزینه \fB\-\-format\fR\&. فیلد \fI\fR باید یکی از مقادیر \fBalways\fR، \fBnever\fR، یا \fBauto\fR باشد (اگر \fI\fR ذکر نشود، مانند این است که \fBalways\fR داده شده باشد)\&. .RE .PP \fB\-\-shell\fR, \fB\-\-perl\fR, \fB\-\-python\fR, \fB\-\-tcl\fR .RS 4 در صورت تعیین، رشته‌هایی که جایگزین متغیرهای نگه‌دارنده \fB%\fR(\fBfieldname\fR) می‌شوند، به صورت رشته‌های متنی مناسب برای زبان میزبان مشخص‌شده نقل‌قول (quote) می‌شوند\&. هدف از این کار تولید تکه‌کدی است که بتوان آن را مستقیماً با "eval" ارزیابی و اجرا کرد\&. .RE .PP \fB\-\-points\-at=\fR\fI\fR .RS 4 تنها مراجعی را فهرست می‌کند که به شیء داده‌شده اشاره دارند\&. .RE .PP \fB\-\-merged\fR[\fB=\fR\fI\fR] .RS 4 تنها مراجعی را فهرست می‌کند که نوک آن‌ها از کامیت مشخص‌شده (در صورت عدم تعیین، \fBHEAD\fR) قابل دسترسی است\&. .RE .PP \fB\-\-no\-merged\fR[\fB=\fR\fI\fR] .RS 4 تنها مراجعی را فهرست می‌کند که نوک آن‌ها از \fI\fR (در صورت عدم تعیین، \fBHEAD\fR) قابل دسترسی نیست\&. .RE .PP \fB\-\-contains\fR[\fB=\fR\fI\fR] .RS 4 تنها مراجعی را فهرست می‌کند که حاوی \fI\fR (در صورت عدم تعیین، \fBHEAD\fR) هستند\&. .RE .PP \fB\-\-no\-contains\fR[\fB=\fR\fI\fR] .RS 4 تنها مراجعی را فهرست می‌کند که حاوی \fI\fR (در صورت عدم تعیین، \fBHEAD\fR) نیستند\&. .RE .PP \fB\-\-ignore\-case\fR .RS 4 مرتب‌سازی و پالایش مراجع بدون در نظر گرفتن بزرگی و کوچکی حروف انجام می‌شود\&. .RE .PP \fB\-\-omit\-empty\fR .RS 4 پس از مراجع قالب‌بندی‌شده‌ای که فرمت آن‌ها به یک رشته خالی گسترش می‌یابد، خط جدیدی چاپ نکن\&. .RE .PP \fB\-\-exclude=\fR\fI\fR .RS 4 اگر یک یا چند گزینه \fB\-\-exclude\fR داده شود، تنها مراجعی نمایش داده می‌شوند که با هیچ یک از پارامترهای \fI\fR مطابقت نداشته باشند\&. تطبیق با استفاده از همان قواعد مربوط به \fI\fR در بالا انجام می‌شود\&. .RE .PP \fB\-\-include\-root\-refs\fR .RS 4 فهرست کردن مراجع ریشه ( \fBHEAD\fR و شبه‌مراجع) جدا از مراجع معمولی\&. .RE .PP \fB\-\-start\-after=\fR\fI\fR .RS 4 امکان صفحه‌بندی خروجی را با پرش از مراجع تا نشانگر مشخص‌شده (و شامل خود آن) فراهم می‌کند\&. هنگام صفحه‌بندی باید توجه داشت که مراجع ممکن است میان فراخوانی‌ها حذف، تغییر یا اضافه شوند\&. خروجی تنها مراجعی را ارائه می‌دهد که از نظر لغوی پس از نشانگر قرار می‌گیرند\&. خروجی از نخستین مرجعی آغاز می‌شود که از نظر الفبایی پس از نشانگر می‌آید\&. نمی‌توان آن را همراه با گزینه‌های \fB\-\-sort=\fR\fI\fR یا \fB\-\-stdin\fR، یا آرگومان(های) \fI\fR برای محدود کردن مراجع استفاده کرد\&. .RE .SH "نام‌های فیلد (FIELD NAMES)" .sp مقادیر گوناگون برگرفته از فیلدهای ساختاریافته در اشیاء ارجاع‌شده می‌توانند برای جای‌گذاری در خروجی حاصل یا به عنوان کلیدهای مرتب‌سازی استفاده شوند\&. .sp برای تمامی اشیاء، نام‌های زیر قابل استفاده هستند: .PP \fBrefname\fR .RS 4 نام مرجع (بخشی که پس از \fB$GIT_DIR/\fR)\& می‌آید\&. برای نام کوتاه و بدون ابهام مرجع، پسوند \fB:short\fR را اضافه کنید\&. گزینه \fBcore\&.warnAmbiguousRefs\fR برای انتخاب حالت اختصار سخت‌گیرانه استفاده می‌شود\&. اگر \fBlstrip=\fR\fI\fR (\fBrstrip=\fR\fI\fR) اضافه شود، تعداد \fI\fR مؤلفه مسیر جداشده با اسلش را از ابتدا (انتهای) نام مرجع حذف می‌کند (برای نمونه \fB%\fR(\fBrefname:lstrip=2\fR) مقدار \fBrefs/tags/foo\fR را به \fBfoo\fR و \fB%\fR(\fBrefname:rstrip=2\fR) مقدار \fBrefs/tags/foo\fR را به \fBrefs\fR تبدیل می‌کند)\&. اگر \fI\fR یک عدد منفی باشد، به تعداد لازم مؤلفه مسیر از انتهای مشخص‌شده حذف می‌شود تا \fB\-\fR\fI\fR مؤلفه مسیر باقی بماند (برای نمونه \fB%\fR(\fBrefname:lstrip=\-2\fR) مقدار \fBrefs/tags/foo\fR را به \fBtags/foo\fR و \fB%\fR(\fBrefname:rstrip=\-1\fR) مقدار \fBrefs/tags/foo\fR را به \fBrefs\fR تبدیل می‌کند)\&. هنگامی که مرجع مؤلفه‌های کافی نداشته باشد، در صورت حذف با \fI\fR مثبت نتیجه یک رشته خالی می‌شود، یا اگر با \fI\fR منفی حذف شود نام کامل مرجع بازگردانده می‌شود\&. هیچ‌کدام خطا به شمار نمی‌روند\&. .sp \fBstrip\fR می‌تواند به عنوان مترادفی برای \fBlstrip\fR استفاده شود\&. .RE .PP \fBobjecttype\fR .RS 4 نوع شیء ( \fBblob\fR، \fBtree\fR، \fBcommit\fR، \fBtag\fR)\&. .RE .PP \fBobjectsize\fR .RS 4 اندازه شیء (همان مقداری که \fIgit cat\-file \-s\fR گزارش می‌دهد)\&. برای دریافت اندازه اشغال‌شده توسط شیء روی دیسک (به بایت)، پسوند \fB:disk\fR را اضافه کنید\&. یادداشت مربوط به اندازه‌ها روی دیسک را در بخش \fICAVEATS\fR در زیر ببینید\&. .RE .PP \fBobjectname\fR .RS 4 نام شیء (معروف به SHA\-1)\&. برای مخفف بدون ابهام نام شیء، پسوند \fB:short\fR را اضافه کنید\&. برای اختصار نام شیء با طول دلخواه، پسوند \fB:short=\fR\fI\fR را اضافه کنید که حداقل طول آن \fBMINIMUM_ABBREV\fR است\&. این طول ممکن است برای اطمینان از یکتا بودن نام شیء افزایش یابد\&. .RE .PP \fBdeltabase\fR .RS 4 اگر شیء به عنوان دلتا ذخیره شده باشد، این مقدار به نام شیء پایه دلتا (delta base) برای آن شیء گسترش می‌یابد؛ در غیر این صورت به نام شیء پوچ (همه صفرها) تبدیل می‌شود\&. .RE .PP \fBupstream\fR .RS 4 نام یک مرجع محلی که می‌توان آن را «بالادست» (upstream) مرجع نمایش داده‌شده دانست\&. گزینه‌های \fB:short\fR، \fB:lstrip\fR و \fB:rstrip\fR را به همان شیوه \fBrefname\fR در بالا پشتیبانی می‌کند\&. علاوه بر این از \fB:track\fR برای نمایش "[ahead N, behind M]" و از \fB:trackshort\fR برای نمایش نسخه خلاصه: ">" (جلوتر)، "<" (عقب‌تر)، "<>" (هم جلوتر و هم عقب‌تر) یا "=" (همگام) پشتیبانی می‌کند\&. همچنین \fB:track\fR هر زمان که با مرجع بالادست نامعلومی روبرو شود عبارت "[gone]" را چاپ می‌کند\&. برای نمایش اطلاعات ردیابی بدون کروشه (یعنی "ahead N, behind M") پسوند \fB:track\fR,nobracket را اضافه کنید\&. .sp برای هر شاخه ردیابی دوردست \fB%\fR(\fBupstream\fR)، عبارات \fB%\fR(\fBupstream:remotename\fR) و \fB%\fR(\fBupstream:remoteref\fR) به ترتیب به نام مخزن دوردست و نام مرجع دوردست ردیابی‌شده اشاره دارند\&. به عبارت دیگر، شاخه ردیابی دوردست را می‌توان به‌طور صریح و مجزا با استفاده از مشخصه مرجع \fB%\fR(\fBupstream:remoteref\fR)\fB:%\fR(\fBupstream\fR) جهت واکشی از \fB%\fR(\fBupstream:remotename\fR) به‌روزرسانی کرد\&. .sp اگر مرجع فاقد اطلاعات ردیابی مربوطه باشد، هیچ اثری ندارد\&. تمامی گزینه‌ها به جز \fBnobracket\fR مانعة‌الجمع هستند، اما اگر با هم استفاده شوند آخرین گزینه انتخاب می‌شود\&. .RE .PP \fBpush\fR .RS 4 نام یک مرجع محلی که نشان‌دهنده مکان \fB@\fR{push} برای مرجع نمایش داده‌شده است\&. همانند \fBupstream\fR از گزینه‌های \fB:short\fR، \fB:lstrip\fR، \fB:rstrip\fR، \fB:track\fR، \fB:trackshort\fR، \fB:remotename\fR و \fB:remoteref\fR پشتیبانی می‌کند\&. اگر هیچ مرجع \fB@\fR{push} پیکربندی نشده باشد، رشته‌ای خالی تولید می‌کند\&. .RE .PP \fBHEAD\fR .RS 4 اگر \fBHEAD\fR با مرجع جاری (شاخه استخراج‌شده) مطابقت داشته باشد علامت \fB*\fR، و در غیر این صورت \*(Aq \*(Aq (یک فاصله)\&. .RE .PP \fBcolor\fR .RS 4 تغییر رنگ خروجی\&. پس از آن \fB:\fR\fI\fR می‌آید، که نام‌های رنگ در بخش Values در قسمت "CONFIGURATION FILE" از \fBgit-config\fR(1) شرح داده شده‌اند؛ برای نمونه، \fB%\fR(\fBcolor:bold\fR \fBred\fR)\&. .RE .PP \fBalign\fR .RS 4 تراز کردن چپ، وسط یا راست محتوای بین \fB%\fR(\fBalign:\fR\fB\&.\&.\&.\fR) و \fB%\fR(\fBend\fR)\&. پس از "\fBalign:\fR"، مقادیر \fBwidth=\fR\fI\fR و \fBposition=\fR\fI\fR به هر ترتیبی و با جداکننده کاما می‌آیند، که در آن \fI\fR یکی از مقادیر \fBleft\fR، \fBright\fR یا \fBmiddle\fR است (مقدار پیش‌فرض \fBleft\fR است) و \fI\fR طول کل محتوا با در نظر گرفتن تراز است\&. برای اختصار، پیشوندهای "width=" و/یا "position=" را می‌توان حذف کرد و به جای آن تنها از \fI\fR و \fI\fR استفاده نمود؛ برای مثال، \fB%\fR(\fBalign:\fR\fI\fR\fB,\fR\fI\fR)\&. اگر طول محتوا بیشتر از عرض باشد، هیچ ترازی انجام نمی‌شود\&. در صورت استفاده با \fB\-\-quote\fR، تمام موارد میان \fB%\fR(\fBalign:\fR\fB\&.\&.\&.\fR) و \fB%\fR(\fBend\fR) نقل‌قول می‌شوند، اما در صورت تودرتو بودن، تنها بالاترین سطح نقل‌قول خواهد شد\&. .RE .PP \fBif\fR .RS 4 به صورت \fB%\fR(\fBif\fR)\fB\&.\&.\&.\fR\fB%\fR(\fBthen\fR)\fB\&.\&.\&.\fR\fB%\fR(\fBend\fR) یا \fB%\fR(\fBif\fR)\fB\&.\&.\&.\fR\fB%\fR(\fBthen\fR)\fB\&.\&.\&.\fR\fB%\fR(\fBelse\fR)\fB\&.\&.\&.\fR\fB%\fR(\fBend\fR) استفاده می‌شود\&. اگر پس از \fB%\fR(\fBif\fR) اتمی دارای مقدار یا یک عبارت رشته‌ای وجود داشته باشد، هر آنچه پس از \fB%\fR(\fBthen\fR) باشد چاپ می‌شود؛ در غیر این صورت اگر از اتم \fB%\fR(\fBelse\fR) استفاده شده باشد، تمام موارد پس از %(else) چاپ خواهد شد\&. هنگام ارزیابی رشته پیش از \fB%\fR(\fBthen\fR)، فاصله‌های خالی نادیده گرفته می‌شوند؛ این امر زمانی مفید است که از اتم \fB%\fR(\fBHEAD\fR) استفاده می‌کنیم که یا "\fB*\fR" یا " " را چاپ می‌کند و می‌خواهیم شرط \fIif\fR را تنها روی مرجع \fBHEAD\fR اعمال کنیم\&. برای مقایسه مقدار میان اتم‌های \fB%\fR(\fBif:\fR\fB\&.\&.\&.\fR) و \fB%\fR(\fBthen\fR) با رشته داده‌شده، "\fB:equals=\fR\fI\fR" یا "\fB:notequals=\fR\fI\fR" را اضافه کنید\&. .RE .PP \fBsymref\fR .RS 4 مرجعی که مرجع نمادین مشخص‌شده به آن ارجاع دارد\&. اگر مرجع نمادین نباشد، چیزی چاپ نمی‌شود\&. همانند \fBrefname\fR در بالا از گزینه‌های \fB:short\fR، \fB:lstrip\fR و \fB:rstrip\fR پشتیبانی می‌کند\&. .RE .PP \fBsignature\fR .RS 4 امضای GPG یک کامیت\&. .RE .PP \fBsignature:grade\fR .RS 4 نمایش .PP \fBG\fR .RS 4 برای یک امضای خوب (معتبر) .RE .PP \fBB\fR .RS 4 برای یک امضای نامعتبر (بد) .RE .PP \fBU\fR .RS 4 برای یک امضای خوب با اعتبار نامشخص .RE .PP \fBX\fR .RS 4 برای یک امضای خوب که منقضی شده است .RE .PP \fBY\fR .RS 4 برای یک امضای خوب ایجادشده با کلیدی که منقضی شده است .RE .PP \fBR\fR .RS 4 برای یک امضای خوب ایجادشده با کلیدی که لغو (revoked) شده است .RE .PP \fBE\fR .RS 4 اگر امضا قابل بررسی نباشد (برای نمونه مفقود بودن کلید) .RE .PP \fBN\fR .RS 4 برای حالت بدون امضا\&. .RE .RE .PP \fBsignature:signer\fR .RS 4 امضاکننده امضای GPG یک کامیت\&. .RE .PP \fBsignature:key\fR .RS 4 کلید امضای GPG یک کامیت\&. .RE .PP \fBsignature:fingerprint\fR .RS 4 اثر انگشت (fingerprint) امضای GPG یک کامیت\&. .RE .PP \fBsignature:primarykeyfingerprint\fR .RS 4 اثر انگشت کلید اصلی امضای GPG یک کامیت\&. .RE .PP \fBsignature:trustlevel\fR .RS 4 سطح اعتماد امضای GPG یک کامیت\&. خروجی‌های ممکن عبارتند از: \fBultimate\fR، \fBfully\fR، \fBmarginal\fR، \fBnever\fR و \fBundefined\fR\&. .RE .PP \fBworktreepath\fR .RS 4 مسیر مطلق به درخت‌کاری (worktree) که مرجع در آن استخراج شده است، در صورتی که در درختی پیوند‌یافته استخراج شده باشد؛ در غیر این صورت رشته‌ای خالی\&. .RE .PP \fBahead\-behind:\fR\fI\fR .RS 4 دو عدد صحیح جداشده با یک فاصله، که به ترتیب تعداد کامیت‌های جلوتر و عقب‌تر را هنگام مقایسه مرجع خروجی با \fI\fR مشخص‌شده در قالب نشان می‌دهند\&. .RE .PP \fBis\-base:\fR\fI\fR .RS 4 حداکثر در یک ردیف، (\fI\fR) ظاهر می‌شود تا مرجعی را نشان دهد که به احتمال زیاد مرجع استفاده‌شده به عنوان نقطه شروع شاخه‌ای است که \fI\fR را تولید کرده است\&. این انتخاب با استفاده از یک روش ابتکاری (heuristic) انجام می‌شود: انتخاب مرجعی که تعداد کامیت‌ها را در تاریخچه والد اول \fI\fR و نه در تاریخچه والد اول مرجع، به حداقل می‌رساند\&. .sp برای نمونه، نمودار زیر را از تاریخچه‌های والد اول چندین مرجع در نظر بگیرید: .sp .if n \{\ .RS 4 .\} .nf *\-\-*\-\-*\-\-*\-\-*\-\-* refs/heads/A \e \e *\-\-*\-\-*\-\-* refs/heads/B \e \e \e \e * * refs/heads/C \e \e *\-\-* refs/heads/D .fi .if n \{\ .RE .\} .sp در اینجا، اگر \fBA\fR، \fBB\fR و \fBC\fR مراجع فیلترشده باشند و رشته قالب \fB%\fR(\fBrefname\fR)\fB:%\fR(\fBis\-base:D\fR) باشد، خروجی به این صورت خواهد بود: .sp .if n \{\ .RS 4 .\} .nf refs/heads/A: refs/heads/B:(D) refs/heads/C: .fi .if n \{\ .RE .\} .sp زیرا تاریخچه والد اول \fBD\fR نخستین تقاطع خود را با تاریخچه‌های والد اول مراجع فیلترشده در یک نیای مشترک والد اول از \fBB\fR و \fBC\fR دارد و در صورت تساوی، نخستین مرجع در ترتیب مرتب‌شده انتخاب می‌شود\&. .sp توجه داشته باشید که اگر تاریخچه والد اول \fI\fR با تاریخچه‌های والد اول مراجع فیلترشده تقاطعی نداشته باشد، این توکن ظاهر نخواهد شد\&. .RE .PP \fBdescribe\fR[\fB:\fR\fI