'\" t .\" Title: git-branch .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 2026-06-29 .\" Manual: دستورات عمومی کاربر .\" Source: Git 2.55.0 .\" Language: Persian .\" .TH "GIT\-BRANCH" "1" "2026\-06\-29" "Git 2\&.55\&.0" "دستورات عمومی کاربر" .\" ----------------------------------------------------------------- .\" * 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-branch \- فهرست کردن، ایجاد یا حذف شاخه‌ها .SH "خلاصه دستور (SYNOPSIS)" .sp .nf \fBgit\fR \fBbranch\fR [\fB\-\-color\fR[\fB=\fR\fI\fR] | \fB\-\-no\-color\fR] [\fB\-\-show\-current\fR] [\fB\-v\fR [\fB\-\-abbrev=\fR\fI\fR | \fB\-\-no\-abbrev\fR]] [\fB\-\-column\fR[\fB=\fR\fI\fR] | \fB\-\-no\-column\fR] [\fB\-\-sort=\fR\fI\fR] [\fB\-\-merged\fR [\fI\fR]] [\fB\-\-no\-merged\fR [\fI\fR]] [\fB\-\-contains\fR [\fI\fR]] [\fB\-\-no\-contains\fR [\fI\fR]] [\fB\-\-points\-at\fR \fI\fR] [\fB\-\-format=\fR\fI\fR] [(\fB\-r\fR|\fB\-\-remotes\fR) | (\fB\-a\fR|\fB\-\-all\fR)] [\fB\-\-list\fR] [\fI\fR\&...] \fBgit\fR \fBbranch\fR [\fB\-\-track\fR[\fB=\fR(\fBdirect\fR|\fBinherit\fR)] | \fB\-\-no\-track\fR] [\fB\-f\fR] [\fB\-\-recurse\-submodules\fR] \fI\fR [\fI\fR] \fBgit\fR \fBbranch\fR (\fB\-\-set\-upstream\-to=\fR\fI\fR|\fB\-u\fR \fI\fR) [\fI\fR] \fBgit\fR \fBbranch\fR \fB\-\-unset\-upstream\fR [\fI\fR] \fBgit\fR \fBbranch\fR (\fB\-m\fR|\fB\-M\fR) [\fI\fR] \fI\fR \fBgit\fR \fBbranch\fR (\fB\-c\fR|\fB\-C\fR) [\fI\fR] \fI\fR \fBgit\fR \fBbranch\fR (\fB\-d\fR|\fB\-D\fR) [\fB\-r\fR] \fI\fR\&... \fBgit\fR \fBbranch\fR \fB\-\-edit\-description\fR [\fI\fR] .fi .sp .SH "توضیحات (DESCRIPTION)" .sp اگر گزینه \fB\-\-list\fR داده شود، یا اگر هیچ آرگومان غیرگزینه‌ای مشخص نشده باشد، شاخه‌های موجود فهرست می‌شوند؛ شاخه کنونی با رنگ سبز برجسته شده و با علامت ستاره مشخص می‌شود\&. هر شاخه‌ای که در درخت‌های کاری متصل (linked worktrees) تحویل گرفته شده باشد با رنگ فیروزه‌ای برجسته شده و با علامت مثبت مشخص می‌گردد\&. گزینه \fB\-r\fR باعث فهرست شدن شاخه‌های ردگیری دوردست (remote-tracking) می‌شود، و گزینه \fB\-a\fR هر دو نوع شاخه‌های محلی و دوردست را نشان می‌دهد\&. .sp اگر یک \fI\fR مشخص شود، به عنوان یک الگوی کاراکتر عام پوسته (wildcard) برای محدود کردن خروجی به شاخه‌های منطبق استفاده می‌شود\&. اگر چندین الگو داده شود، شاخه‌ای که با هر یک از الگوها تطبیق داشته باشد نمایش داده خواهد شد\&. .sp توجه داشته باشید که هنگام ارائه یک \fI\fR، باید از \fB\-\-list\fR استفاده کنید؛ در غیر این صورت ممکن است دستور به عنوان ایجاد شاخه تفسیر شود\&. .sp با گزینه \fB\-\-contains\fR، تنها شاخه‌هایی که شامل کامیت مشخص‌شده هستند نمایش داده می‌شوند (به بیان دیگر، شاخه‌هایی که کامیت نوک آن‌ها از نوادگان کامیت نام‌برده است)؛ \fB\-\-no\-contains\fR این رفتار را معکوس می‌کند\&. با گزینه \fB\-\-merged\fR، تنها شاخه‌هایی که در کامیت مشخص‌شده ادغام شده‌اند (یعنی شاخه‌هایی که کامیت نوک آن‌ها از کامیت نام‌برده قابل دستیابی است) فهرست خواهند شد\&. با گزینه \fB\-\-no\-merged\fR تنها شاخه‌هایی که در کامیت مشخص‌شده ادغام نشده‌اند فهرست می‌شوند\&. اگر آرگومان \fI\fR مشخص نشود، به طور پیش‌فرض روی \fBHEAD\fR (یعنی نوک شاخه فعلی) قرار می‌گیرد\&. .sp شکل دوم دستور یک سرشاخه جدید به نام \fI\fR ایجاد می‌کند که به \fBHEAD\fR فعلی، یا به \fI\fR (در صورت تعیین) اشاره دارد\&. به عنوان یک حالت ویژه، برای \fI\fR، می‌توانید از \fI\fR\fB\&.\&.\&.\fR\fI\fR به عنوان میان‌بری برای پایه ادغام (merge base) میان \fI\fR و \fI\fR استفاده کنید (در صورتی که دقیقاً یک پایه ادغام وجود داشته باشد)\&. شما می‌توانید حداکثر یکی از \fI\fR یا \fI\fR را حذف کنید، که در این حالت به طور پیش‌فرض \fBHEAD\fR در نظر گرفته می‌شود\&. .sp توجه داشته باشید که این دستور شاخه جدید را ایجاد می‌کند، اما درخت کاری را به آن سوئیچ نمی‌کند؛ برای جابه‌جایی به شاخه جدید از \fBgit\fR \fBswitch\fR \fI\fR استفاده کنید\&. .sp هنگامی که یک شاخه محلی از روی یک شاخه ردگیری دوردست منشعب می‌شود، گیت شاخه را پیکربندی می‌کند (به‌ویژه ورودی‌های پیکربندی \fBbranch\&.\fR\fI\fR\fB\&.remote\fR و \fBbranch\&.\fR\fI\fR\fB\&.merge\fR) به طوری که \fBgit\fR \fBpull\fR به شکل مناسب تغییرات را از شاخه ردگیری دوردست ادغام نماید\&. این رفتار می‌تواند از طریق فلگ پیکربندی سراسری \fBbranch\&.autoSetupMerge\fR تغییر یابد\&. این تنظیم می‌تواند با استفاده از گزینه‌های \fB\-\-track\fR و \fB\-\-no\-track\fR نادیده گرفته شود، و بعداً با استفاده از \fBgit\fR \fBbranch\fR \fB\-\-set\-upstream\-to\fR تغییر کند\&. .sp با یک گزینه \fB\-m\fR یا \fB\-M\fR، نام \fI\fR به \fI\fR تغییر خواهد یافت\&. اگر \fI\fR دارای یک وقایع‌نگار ارجاع (reflog) متناظر باشد، نام آن برای تطبیق با \fI\fR تغییر می‌یابد و یک مدخل وقایع‌نگار ارجاع برای به خاطر سپردن تغییر نام شاخه ایجاد می‌شود\&. اگر \fI\fR از قبل وجود داشته باشد، باید از \fB\-M\fR برای اجبار به انجام تغییر نام استفاده شود\&. .sp گزینه‌های \fB\-c\fR و \fB\-C\fR دقیقاً همان مفاهیم معنایی \fB\-m\fR و \fB\-M\fR را دارند، به جز اینکه شاخه به جای تغییر نام، همراه با پیکربندی و وقایع‌نگار ارجاع خود در یک نام جدید کپی می‌شود\&. .sp با گزینه \fB\-d\fR یا \fB\-D\fR، شاخه \fI\fR حذف خواهد شد\&. می‌توانید بیش از یک شاخه را برای حذف مشخص کنید\&. اگر شاخه در حال حاضر دارای وقایع‌نگار ارجاع باشد، وقایع‌نگار ارجاع نیز حذف خواهد شد\&. .sp از گزینه \fB\-r\fR همراه با \fB\-d\fR برای حذف شاخه‌های ردگیری دوردست استفاده کنید\&. توجه داشته باشید که حذف شاخه‌های ردگیری دوردست تنها در صورتی منطقی است که آن‌ها دیگر در مخزن دوردست وجود نداشته باشند یا اگر \fBgit\fR \fBfetch\fR طوری پیکربندی شده باشد که آن‌ها را دوباره واکشی نکند\&. همچنین زیردستور \fBprune\fR از \fBgit-remote\fR(1) را برای راهکاری جهت پاک‌سازی تمام شاخه‌های ردگیری دوردست منسوخ ببینید\&. .SH "گزینه‌ها (OPTIONS)" .PP \fB\-d\fR, \fB\-\-delete\fR .RS 4 حذف یک شاخه\&. شاخه باید به طور کامل در شاخه بالادستی خود ادغام شده باشد، یا در \fBHEAD\fR اگر هیچ شاخه بالادستی با \fB\-\-track\fR یا \fB\-\-set\-upstream\-to\fR تنظیم نشده باشد\&. .RE .PP \fB\-D\fR .RS 4 میان‌بری برای \fB\-\-delete\fR \fB\-\-force\fR\&. .RE .PP \fB\-\-create\-reflog\fR .RS 4 ایجاد وقایع‌نگار ارجاع (reflog) برای شاخه\&. این گزینه ثبت تمام تغییرات ایجادشده در ارجاع شاخه را فعال می‌کند و امکان استفاده از عبارات شاخص تاریخ‌محور مانند \fI\fR\fB@\fR{yesterday} را فراهم می‌سازد\&. توجه داشته باشید که در مخازن غیرلخت (non-bare)، وقایع‌نگار ارجاع معمولاً به طور پیش‌فرض با گزینه پیکربندی \fBcore\&.logAllRefUpdates\fR فعال است\&. شکل نفی‌شده \fB\-\-no\-create\-reflog\fR تنها یک \fB\-\-create\-reflog\fR قبلی را نادیده می‌گیرد، اما در حال حاضر تنظیمات \fBcore\&.logAllRefUpdates\fR را خنثی نمی‌کند\&. .RE .PP \fB\-f\fR, \fB\-\-force\fR .RS 4 بازنشانی \fI\fR به \fI\fR، حتی اگر \fI\fR از قبل وجود داشته باشد\&. بدون گزینه \fB\-f\fR، دستور \fBgit\fR \fBbranch\fR از تغییر یک شاخه موجود خودداری می‌کند\&. در ترکیب با \fB\-d\fR (یا \fB\-\-delete\fR)، اجازه می‌دهد شاخه بدون در نظر گرفتن وضعیت ادغام آن یا حتی اشاره کردن به یک کامیت معتبر حذف شود\&. در ترکیب با \fB\-m\fR (یا \fB\-\-move\fR)، اجازه می‌دهد نام شاخه تغییر کند حتی اگر نام شاخه جدید از قبل وجود داشته باشد؛ همین امر برای \fB\-c\fR (یا \fB\-\-copy\fR) نیز صادق است\&. .sp توجه داشته باشید که دستور \fBgit\fR \fBbranch\fR \fB\-f\fR \fI\fR [\fI\fR]، حتی با گزینه \fB\-f\fR، از تغییر شاخه موجود \fI\fR که در درخت کاری متصل دیگری در همان مخزن تحویل گرفته شده است خودداری می‌کند\&. .RE .PP \fB\-m\fR, \fB\-\-move\fR .RS 4 انتقال/تغییر نام یک شاخه، همراه با پیکربندی و وقایع‌نگار ارجاع آن\&. .RE .PP \fB\-M\fR .RS 4 میان‌بری برای \fB\-\-move\fR \fB\-\-force\fR\&. .RE .PP \fB\-c\fR, \fB\-\-copy\fR .RS 4 کپی کردن یک شاخه، همراه با پیکربندی و وقایع‌نگار ارجاع آن\&. .RE .PP \fB\-C\fR .RS 4 میان‌بری برای \fB\-\-copy\fR \fB\-\-force\fR\&. .RE .PP \fB\-\-color\fR[\fB=\fR\fI\fR] .RS 4 رنگی کردن شاخه‌ها برای برجسته ساختن شاخه فعلی، شاخه‌های محلی و شاخه‌های ردگیری دوردست\&. مقدار باید یکی از \fBalways\fR (پیش‌فرض)، \fBnever\fR، یا \fBauto\fR باشد\&. .RE .PP \fB\-\-no\-color\fR .RS 4 خاموش کردن رنگ‌بندی شاخه‌ها، حتی زمانی که فایل پیکربندی پیش‌فرض خروجی رنگی را تعیین کرده باشد\&. معادل با \fB\-\-color=never\fR\&. .RE .PP \fB\-i\fR, \fB\-\-ignore\-case\fR .RS 4 مرتب‌سازی و فیلتر کردن شاخه‌ها بدون حساسیت به حروف بزرگ و کوچک انجام می‌شود\&. .RE .PP \fB\-\-omit\-empty\fR .RS 4 پس از ارجاع‌های قالب‌بندی‌شده‌ای که قالب آن‌ها به یک رشته خالی گسترش می‌یابد، خط جدید چاپ نشود\&. .RE .PP \fB\-\-column\fR[\fB=\fR\fI\fR], \fB\-\-no\-column\fR .RS 4 نمایش فهرست شاخه‌ها در ستون‌ها\&. برای نحو گزینه‌ها متغیر پیکربندی \fBcolumn\&.branch\fR را ببینید\&. گزینه‌های \fB\-\-column\fR و \fB\-\-no\-column\fR بدون گزینه به ترتیب معادل \fBalways\fR و \fBnever\fR هستند\&. .sp این گزینه فقط در حالت غیرتفصیلی (non-verbose) کاربرد دارد\&. .RE .PP \fB\-\-sort=\fR\fI\fR .RS 4 مرتب‌سازی بر اساس \fI\fR\&. پیشوند \fB\-\fR را برای مرتب‌سازی نزولی بر اساس مقدار اضافه کنید\&. می‌توانید از گزینه \fB\-\-sort=\fR\fI\fR چندین بار استفاده کنید که در این صورت آخرین کلید به کلید اصلی تبدیل می‌شود\&. کلیدهای پشتیبانی‌شده همان موارد موجود در \fBgit-for-each-ref\fR(1) هستند\&. ترتیب مرتب‌سازی به طور پیش‌فرض بر اساس مقدار پیکربندی‌شده در متغیر \fBbranch\&.sort\fR (در صورت وجود) است، یا بر اساس نام ارجاع کامل (شامل پیشوند \fBrefs/\&.\fR\&.\&) مرتب می‌شود\&. این گزینه ابتدا \fBHEAD\fR جداشده (در صورت وجود)، سپس شاخه‌های محلی و در نهایت شاخه‌های ردگیری دوردست را فهرست می‌کند\&. دستور \fBgit-config\fR(1) را ببینید\&. .RE .PP \fB\-r\fR, \fB\-\-remotes\fR .RS 4 فهرست کردن یا حذف (در صورت استفاده همراه با \fB\-d\fR) شاخه‌های ردگیری دوردست\&. با \fB\-\-list\fR برای تطبیق با الگو(های) اختیاری ترکیب می‌شود\&. .RE .PP \fB\-a\fR, \fB\-\-all\fR .RS 4 فهرست کردن هم شاخه‌های ردگیری دوردست و هم شاخه‌های محلی\&. با \fB\-\-list\fR برای تطبیق با الگو(های) اختیاری ترکیب می‌شود\&. .RE .PP \fB\-l\fR, \fB\-\-list\fR .RS 4 فهرست کردن شاخه‌ها\&. همراه با \fI\fR\&.\&.\& اختیاری، مثلاً \fBgit\fR \fBbranch\fR \fB\-\-list\fR \*(Aqmaint\-*\*(Aq، فقط شاخه‌هایی که با الگو(ها) مطابقت دارند را فهرست می‌کند\&. .RE .PP \fB\-\-show\-current\fR .RS 4 چاپ نام شاخه کنونی\&. در حالت \fBHEAD\fR جداشده (detached)، هیچ متنی چاپ نمی‌شود\&. .RE .PP \fB\-v\fR, \fB\-vv\fR, \fB\-\-verbose\fR .RS 4 هنگامی که در حالت فهرست است، شناسه sha1 و خط موضوع کامیت را برای هر سرشاخه، همراه با رابطه با شاخه بالادستی (در صورت وجود) نشان می‌دهد\&. اگر دو بار داده شود، مسیر درخت کاری متصل (در صورت وجود) و نام شاخه بالادستی را نیز چاپ می‌کند (همچنین ببینید \fBgit\fR \fBremote\fR \fBshow\fR \fI\fR)\&. توجه داشته باشید که مسیر مربوط به \fBHEAD\fR درخت کاری کنونی چاپ نخواهد شد (همیشه دایرکتوری کنونی شما خواهد بود)\&. .RE .PP \fB\-q\fR, \fB\-\-quiet\fR .RS 4 هنگام ایجاد یا حذف یک شاخه، عملکرد ساکت‌تری داشته و پیام‌های غیرخطا را سرکوب می‌کند\&. .RE .PP \fB\-\-abbrev=\fR\fI\fR .RS 4 در فهرست تفصیلی که نام شیء کامیت را نشان می‌دهد، کوتاه‌ترین پیشوندی را نمایش می‌دهد که حداقل \fI\fR رقم هگزادسیمال طول داشته و به طور یکتا به شیء ارجاع دهد\&. مقدار پیش‌فرض ۷ است و می‌تواند با گزینه پیکربندی \fBcore\&.abbrev\fR بازنویسی شود\&. .RE .PP \fB\-\-no\-abbrev\fR .RS 4 نمایش شناسه‌های کامل sha1 در فهرست خروجی به جای کوتاه کردن آن‌ها\&. .RE .PP \fB\-t\fR, \fB\-\-track\fR[\fB=\fR(\fBdirect\fR|\fBinherit\fR)] .RS 4 هنگام ایجاد یک شاخه جدید، ورودی‌های پیکربندی \fBbranch\&.\fR\fI\fR\fB\&.remote\fR و \fBbranch\&.\fR\fI\fR\fB\&.merge\fR را برای تعیین پیکربندی ردگیری «بالادست» (upstream) برای شاخه جدید تنظیم می‌کند\&. این پیکربندی به گیت می‌گوید که رابطه میان دو شاخه را در \fBgit\fR \fBstatus\fR و \fBgit\fR \fBbranch\fR \fB\-v\fR نشان دهد\&. علاوه بر این، دستور \fBgit\fR \fBpull\fR بدون آرگومان را هدایت می‌کند تا هنگام تحویل گرفتن شاخه جدید، از شاخه بالادستی دریافت (pull) کند\&. .sp شاخه بالادست دقیق بر اساس آرگومان اختیاری انتخاب می‌شود: \fB\-t\fR، \fB\-\-track\fR، یا \fB\-\-track=direct\fR به معنای استفاده از خود شاخه نقطه شروع به عنوان بالادست است؛ \fB\-\-track=inherit\fR به معنای کپی کردن پیکربندی بالادستِ شاخه نقطه شروع است\&. .sp متغیر پیکربندی \fBbranch\&.autoSetupMerge\fR مشخص می‌کند که \fBgit\fR \fBswitch\fR، \fBgit\fR \fBcheckout\fR و \fBgit\fR \fBbranch\fR هنگامی که هیچ‌کدام از گزینه‌های \fB\-\-track\fR و \fB\-\-no\-track\fR مشخص نشده باشند چگونه باید رفتار کنند: .sp گزینه پیش‌فرض، \fBtrue\fR، هر زمان که نقطه شروع یک شاخه ردگیری دوردست باشد طوری عمل می‌کند که گویی \fB\-\-track=direct\fR داده شده است\&. \fBfalse\fR طوری عمل می‌کند که گویی \fB\-\-no\-track\fR داده شده است\&. \fBalways\fR طوری عمل می‌کند که گویی \fB\-\-track=direct\fR داده شده است\&. \fBinherit\fR طوری عمل می‌کند که گویی \fB\-\-track=inherit\fR داده شده است\&. \fBsimple\fR تنها زمانی به صورت \fB\-\-track=direct\fR عمل می‌کند که \fI\fR یک شاخه ردگیری دوردست باشد و شاخه جدید همان نام شاخه دوردست را داشته باشد\&. .sp برای بحث تکمیلی در مورد نحوه استفاده از گزینه‌های \fBbranch\&.\fR\fI\fR\fB\&.remote\fR و \fBbranch\&.\fR\fI\fR\fB\&.merge\fR، دستورات \fBgit-pull\fR(1) و \fBgit-config\fR(1) را ببینید\&. .RE .PP \fB\-\-no\-track\fR .RS 4 پیکربندی «بالادست» را تنظیم نکن، حتی اگر متغیر پیکربندی \fBbranch\&.autoSetupMerge\fR تنظیم شده باشد\&. .RE .PP \fB\-\-recurse\-submodules\fR .RS 4 این گزینه آزمایشی است! در صورتی که \fBsubmodule\&.propagateBranches\fR فعال باشد، باعث می‌شود دستور فعلی به صورت بازگشتی در زیرماژول‌ها پیمایش کند\&. مدخل \fBsubmodule\&.propagateBranches\fR در \fBgit-config\fR(1) را ببینید\&. در حال حاضر، فقط ایجاد شاخه پشتیبانی می‌شود\&. .sp هنگام استفاده در ایجاد شاخه، یک شاخه جدید \fI\fR در ابرپروژه (superproject) و تمام زیرماژول‌های موجود در \fI\fR ابرپروژه ایجاد خواهد شد\&. در زیرماژول‌ها، شاخه به کامیت زیرماژول در \fI\fR ابرپروژه اشاره خواهد کرد، اما اطلاعات ردگیری شاخه بر اساس شاخه‌ها و دوردست‌های زیرماژول تنظیم می‌شود؛ برای مثال \fBgit\fR \fBbranch\fR \fB\-\-recurse\-submodules\fR \fBtopic\fR \fBorigin/main\fR شاخه زیرماژول «topic» را ایجاد می‌کند که به کامیت زیرماژول در «origin/main» ابرپروژه اشاره دارد، اما «origin/main» زیرماژول را ردگیری می‌کند\&. .RE .PP \fB\-\-set\-upstream\fR .RS 4 از آنجا که این گزینه نحو گیج‌کننده‌ای داشت، دیگر پشتیبانی نمی‌شود\&. لطفاً به جای آن از \fB\-\-track\fR یا \fB\-\-set\-upstream\-to\fR استفاده کنید\&. .RE .PP \fB\-u\fR \fI\fR, \fB\-\-set\-upstream\-to=\fR\fI\fR .RS 4 اطلاعات ردگیری \fI\fR را طوری تنظیم می‌کند که \fI\fR به عنوان شاخه بالادستی \fI\fR در نظر گرفته شود\&. اگر هیچ \fI\fR مشخص نشده باشد، به طور پیش‌فرض روی شاخه فعلی قرار می‌گیرد\&. .RE .PP \fB\-\-unset\-upstream\fR .RS 4 حذف اطلاعات بالادست برای \fI\fR\&. اگر هیچ شاخه‌ای مشخص نشده باشد، به طور پیش‌فرض روی شاخه فعلی اعمال می‌شود\&. .RE .PP \fB\-\-edit\-description\fR .RS 4 یک ویرایشگر را باز می‌کند و متنی را برای توضیح اینکه شاخه برای چه کاری است ویرایش می‌کند، تا توسط دستورات مختلف دیگر استفاده شود (مانند \fBformat\-patch\fR، \fBrequest\-pull\fR و \fBmerge\fR (در صورت فعال بودن))\&. توضیحات چندخطی نیز مجاز است\&. .RE .PP \fB\-\-contains\fR [\fI\fR] .RS 4 فقط شاخه‌هایی را فهرست می‌کند که شامل \fI\fR باشند (در صورت عدم تعیین، \fBHEAD\fR)\&. این گزینه متضمن \fB\-\-list\fR است\&. .RE .PP \fB\-\-no\-contains\fR [\fI\fR] .RS 4 فقط شاخه‌هایی را فهرست می‌کند که شامل \fI\fR نباشند (در صورت عدم تعیین، \fBHEAD\fR)\&. این گزینه متضمن \fB\-\-list\fR است\&. .RE .PP \fB\-\-merged\fR [\fI\fR] .RS 4 فقط شاخه‌هایی را فهرست می‌کند که نوک آن‌ها از \fI\fR قابل دستیابی باشد (در صورت عدم تعیین، \fBHEAD\fR)\&. این گزینه متضمن \fB\-\-list\fR است\&. .RE .PP \fB\-\-no\-merged\fR [\fI\fR] .RS 4 فقط شاخه‌هایی را فهرست می‌کند که نوک آن‌ها از \fI\fR قابل دستیابی نباشد (در صورت عدم تعیین، \fBHEAD\fR)\&. این گزینه متضمن \fB\-\-list\fR است\&. .RE .PP \fB\-\-points\-at\fR \fI\fR .RS 4 فقط شاخه‌های مربوط به \fI\fR را فهرست می‌کند\&. .RE .PP \fB\-\-format\fR \fI\fR .RS 4 رشته‌ای که \fB%\fR(\fBfieldname\fR) را از ارجاع شاخه در حال نمایش و شیئی که به آن اشاره دارد جای‌گذاری می‌کند\&. \fI\fR همانند قالب در \fBgit-for-each-ref\fR(1) است\&. .RE .PP \fI\fR .RS 4 نام شاخه‌ای که باید ایجاد یا حذف شود\&. نام شاخه جدید باید تمام بررسی‌های تعریف‌شده توسط \fBgit-check-ref-format\fR(1) را با موفقیت پشت سر بگذارد\&. برخی از این بررسی‌ها ممکن است نویسه‌های مجاز در نام شاخه را محدود کنند\&. .RE .PP \fI\fR .RS 4 سرشاخه جدید به این کامیت اشاره خواهد کرد\&. این مقدار می‌تواند به عنوان یک نام شاخه، شناسه کامیت یا یک تگ داده شود\&. اگر این گزینه حذف شود، \fBHEAD\fR فعلی به جای آن استفاده خواهد شد\&. .RE .PP \fI\fR .RS 4 نام یک شاخه موجود\&. اگر این گزینه حذف شود، نام شاخه فعلی به جای آن استفاده خواهد شد\&. .RE .PP \fI\fR .RS 4 نام جدید برای یک شاخه موجود\&. همان محدودیت‌های \fI\fR در اینجا نیز اعمال می‌شوند\&. .RE .SH "پیکربندی (CONFIGURATION)" .sp متغیر \fBpager\&.branch\fR تنها زمانی رعایت می‌شود که شاخه‌ها فهرست شوند، یعنی زمانی که \fB\-\-list\fR استفاده شده یا مستتر باشد\&. مقدار پیش‌فرض استفاده از یک صفحه‌بند (pager) است\&. دستور \fBgit-config\fR(1) را ببینید\&. .sp تمام موارد بالاتر از این خط در این بخش از مستندات \fBgit-config\fR(1) گنجانده نشده است\&. محتوایی که در ادامه می‌آید همان چیزی است که در آنجا یافت می‌شود: .PP \fBbranch\&.autoSetupMerge\fR .RS 4 به دستورات \fBgit\fR \fBbranch\fR، \fBgit\fR \fBswitch\fR و \fBgit\fR \fBcheckout\fR می‌گوید شاخه‌های جدید را طوری تنظیم کنند که \fBgit-pull\fR(1) به درستی تغییرات را از شاخه نقطه شروع ادغام نماید\&. توجه داشته باشید که حتی اگر این گزینه تنظیم نشده باشد، این رفتار می‌تواند به ازای هر شاخه با استفاده از گزینه‌های \fB\-\-track\fR و \fB\-\-no\-track\fR انتخاب شود\&. مقدار پیش‌فرض این گزینه \fBtrue\fR است\&. مقادیر معتبر عبارتند از: .PP \fBfalse\fR .RS 4 هیچ راه‌اندازی خودکاری انجام نمی‌شود .RE .PP \fBtrue\fR .RS 4 راه‌اندازی خودکار زمانی انجام می‌شود که نقطه شروع یک شاخه ردگیری دوردست باشد .RE .PP \fBalways\fR .RS 4 راه‌اندازی خودکار زمانی انجام می‌شود که نقطه شروع یک شاخه محلی یا یک شاخه ردگیری دوردست باشد .RE .PP \fBinherit\fR .RS 4 اگر نقطه شروع دارای پیکربندی ردگیری باشد، به شاخه جدید کپی می‌شود .RE .PP \fBsimple\fR .RS 4 راه‌اندازی خودکار تنها زمانی انجام می‌شود که نقطه شروع یک شاخه ردگیری دوردست باشد و شاخه جدید همان نام شاخه دوردست را داشته باشد\&. .RE .RE .PP \fBbranch\&.autoSetupRebase\fR .RS 4 هنگامی که یک شاخه جدید با \fBgit\fR \fBbranch\fR، \fBgit\fR \fBswitch\fR یا \fBgit\fR \fBcheckout\fR ایجاد می‌شود که شاخه دیگری را ردگیری می‌کند، این متغیر به گیت می‌گوید دریافت (pull) را طوری تنظیم کند که به جای ادغام، بازنشانی پایه (rebase) انجام شود (به \fBbranch\&.\fR\fI\fR\fB\&.rebase\fR مراجعه کنید)\&. مقادیر معتبر عبارتند از: .PP \fBnever\fR .RS 4 بازنشانی پایه هرگز به طور خودکار روی true تنظیم نمی‌شود\&. .RE .PP \fBlocal\fR .RS 4 بازنشانی پایه برای شاخه‌های ردگیری‌شده از سایر شاخه‌های محلی روی true تنظیم می‌شود\&. .RE .PP \fBremote\fR .RS 4 بازنشانی پایه برای شاخه‌های ردگیری‌شده از شاخه‌های ردگیری دوردست روی true تنظیم می‌شود\&. .RE .PP \fBalways\fR .RS 4 بازنشانی پایه برای تمام شاخه‌های ردگیری روی true تنظیم خواهد شد\&. .RE .sp برای جزئیات در مورد چگونگی تنظیم یک شاخه برای ردگیری شاخه دیگر، \fBbranch\&.autoSetupMerge\fR را ببینید\&. مقدار پیش‌فرض این گزینه \fBnever\fR است\&. .RE .PP \fBbranch\&.sort\fR .RS 4 این متغیر ترتیب مرتب‌سازی شاخه‌ها را هنگام نمایش توسط \fBgit-branch\fR(1) کنترل می‌کند\&. بدون ارائه گزینه \fB\-\-sort=\fR\fI\fR، مقدار این متغیر به عنوان پیش‌فرض استفاده خواهد شد\&. برای مقادیر معتبر، نام فیلدهای \fBgit-for-each-ref\fR(1) را ببینید\&. .RE .PP \fBbranch\&.\fR\fI\fR\fB\&.remote\fR .RS 4 هنگامی که روی شاخه \fI\fR هستید، به \fBgit\fR \fBfetch\fR و \fBgit\fR \fBpush\fR می‌گوید که از کدام مخزن دوردست واکشی کرده یا به کدام مخزن ارسال کنند\&. مخزن دوردست برای ارسال ممکن است با \fBremote\&.pushDefault\fR (برای همه شاخه‌ها) بازنویسی شود\&. مخزن دوردست برای ارسال برای شاخه فعلی، ممکن است مجدداً با \fBbranch\&.\fR\fI\fR\fB\&.pushRemote\fR بازنویسی شود\&. اگر هیچ مخزن دوردستی پیکربندی نشده باشد، یا اگر روی هیچ شاخه‌ای قرار ندارید و بیش از یک مخزن دوردست در مخزن تعریف شده باشد، مقدار پیش‌فرض برای واکشی \fBorigin\fR و برای ارسال \fBremote\&.pushDefault\fR خواهد بود\&. علاوه بر این، \&. (یک نقطه) نشان‌دهنده مخزن محلی فعلی است (یک مخزن نقطه‌ای)، یادداشت پایانی \fBbranch\&.\fR\fI\fR\fB\&.merge\fR را در زیر ببینید\&. .RE .PP \fBbranch\&.\fR\fI\fR\fB\&.pushRemote\fR .RS 4 هنگامی که روی شاخه \fI\fR هستید، \fBbranch\&.\fR\fI\fR\fB\&.remote\fR را برای ارسال بازنویسی می‌کند\&. همچنین \fBremote\&.pushDefault\fR را برای ارسال از شاخه \fI\fR بازنویسی می‌نماید\&. هنگامی که از یک مکان دریافت می‌کنید (مثلاً بالادست خود) و به مکان دیگری ارسال می‌کنید (مثلاً مخزن انتشار اختصاصی خود)، می‌توانید \fBremote\&.pushDefault\fR را برای تعیین مخزن دوردستِ ارسال برای همه شاخه‌ها تنظیم کرده و از این گزینه برای بازنویسی آن برای یک شاخه خاص استفاده کنید\&. .RE .PP \fBbranch\&.\fR\fI\fR\fB\&.merge\fR .RS 4 همراه با \fBbranch\&.\fR\fI\fR\fB\&.remote\fR، شاخه بالادستی را برای شاخه داده‌شده تعریف می‌کند\&. به \fBgit\fR \fBfetch\fR/\fBgit\fR \fBpull\fR/\fBgit\fR \fBrebase\fR می‌گوید که کدام شاخه را ادغام کنند و همچنین می‌تواند بر \fBgit\fR \fBpush\fR تأثیر بگذارد (به \fBpush\&.default\fR مراجعه کنید)\&. هنگامی که در شاخه \fI\fR هستید، به \fBgit\fR \fBfetch\fR اعلام می‌کند که چه refspec پیش‌فرضی برای ادغام در \fBFETCH_HEAD\fR علامت‌گذاری شود\&. مقدار مانند بخش دوردست یک refspec مدیریت می‌شود و باید با ارجاعی که از مخزن دوردستِ مشخص‌شده توسط \fBbranch\&.\fR\fI\fR\fB\&.remote\fR واکشی می‌شود مطابقت داشته باشد\&. اطلاعات ادغام توسط \fBgit\fR \fBpull\fR (که ابتدا \fBgit\fR \fBfetch\fR را فراخوانی می‌کند) برای یافتن شاخه پیش‌فرض جهت ادغام استفاده می‌شود\&. بدون این گزینه، \fBgit\fR \fBpull\fR به طور پیش‌فرض اولین refspec واکشی‌شده را ادغام می‌کند\&. برای دستیابی به یک ادغام چندشاخه (octopus merge) چندین مقدار را مشخص کنید\&. اگر می‌خواهید \fBgit\fR \fBpull\fR را طوری تنظیم کنید که از شاخه دیگری در مخزن محلی به درون \fI\fR ادغام شود، می‌توانید \fBbranch\&.\fR\fI\fR\fB\&.merge\fR را به شاخه مورد نظر اشاره داده و از تنظیم مسیر نسبی \&. (یک نقطه) برای \fBbranch\&.\fR\fI\fR\fB\&.remote\fR استفاده کنید\&. .RE .PP \fBbranch\&.\fR\fI\fR\fB\&.mergeOptions\fR .RS 4 گزینه‌های پیش‌فرض را برای ادغام در شاخه \fI\fR تنظیم می‌کند\&. نحو و گزینه‌های پشتیبانی‌شده همانند موارد \fBgit-merge\fR(1) هستند، اما مقادیر گزینه‌های حاوی نویسه‌های فاصله خالی در حال حاضر پشتیبانی نمی‌شوند\&. .RE .PP \fBbranch\&.\fR\fI\fR\fB\&.rebase\fR .RS 4 هنگامی که true باشد، هنگام اجرای \fBgit\fR \fBpull\fR، شاخه \fI\fR را به جای ادغام شاخه پیش‌فرض از مخزن دوردست پیش‌فرض، بر روی شاخه واکشی‌شده بازنشانی پایه (rebase) می‌کند\&. برای انجام این کار به شیوه‌ای غیروابسته به شاخه، \fBpull\&.rebase\fR را ببینید\&. .sp هنگامی که \fBmerges\fR (یا فقط \fBm\fR) باشد، گزینه \fB\-\-rebase\-merges\fR را به \fBgit\fR \fBrebase\fR پاس می‌دهد تا کامیت‌های ادغام محلی در بازنشانی پایه گنجانده شوند (برای جزئیات به \fBgit-rebase\fR(1) مراجعه کنید)\&. .sp هنگامی که مقدار \fBinteractive\fR (یا فقط \fBi\fR) باشد، بازنشانی پایه در حالت تعاملی اجرا می‌شود\&. .sp \fBنکته\fR: این عملیات بالقوه خطرناک است؛ از آن استفاده \fBنکنید\fR مگر اینکه پیامدهای آن را درک کرده باشید (برای جزئیات به \fBgit-rebase\fR(1) مراجعه کنید)\&. .RE .PP \fBbranch\&.\fR\fI\fR\fB\&.description\fR .RS 4 توضیحات شاخه، می‌تواند با \fBgit\fR \fBbranch\fR \fB\-\-edit\-description\fR ویرایش شود\&. توضیحات شاخه به طور خودکار به نامه پوششی \fBformat\-patch\fR یا خلاصه \fBrequest\-pull\fR اضافه می‌شود\&. .RE .SH "مثال‌ها (EXAMPLES)" .PP شروع توسعه از یک تگ شناخته‌شده .RS 4 .sp .if n \{\ .RS 4 .\} .nf $ git clone git://git\&.kernel\&.org/pub/scm/\&.\&.\&./linux\-2\&.6 my2\&.6 $ cd my2\&.6 $ git branch my2\&.6\&.14 v2\&.6\&.14 \fB(1)\fR $ git switch my2\&.6\&.14 .fi .if n \{\ .RE .\} .sp .TS tab(:); r lw(\n(.lu*75u/100u). \fB1.\fR\h'-2n':T{ این مرحله و مرحله بعد می‌توانند در یک مرحله واحد با دستور «checkout \-b my2\&.6\&.14 v2\&.6\&.14» ترکیب شوند\&. T} .TE .RE .PP حذف یک شاخه غیرضروری .RS 4 .sp .if n \{\ .RS 4 .\} .nf $ git clone git://git\&.kernel\&.org/\&.\&.\&./git\&.git my\&.git $ cd my\&.git $ git branch \-d \-r origin/todo origin/html origin/man \fB(1)\fR $ git branch \-D test \fB(2)\fR .fi .if n \{\ .RE .\} .sp .TS tab(:); r lw(\n(.lu*75u/100u). \fB1.\fR\h'-2n':T{ شاخه‌های ردگیری دوردست «todo»، «html» و «man» را حذف می‌کند\&. دستور بعدی \fBgit\fR \fBfetch\fR یا \fBgit\fR \fBpull\fR آن‌ها را مجدداً ایجاد خواهد کرد مگر اینکه آن‌ها را طوری پیکربندی کنید که واکشی نشوند\&. دستور \fBgit-fetch\fR(1) را ببینید\&. T} \fB2.\fR\h'-2n':T{ شاخه «test» را حذف می‌کند حتی اگر شاخه «master» (یا هر شاخه‌ای که در حال حاضر تحویل گرفته شده است) تمام کامیت‌های شاخه test را در بر نداشته باشد\&. T} .TE .RE .PP فهرست کردن شاخه‌ها از یک مخزن دوردست خاص .RS 4 .sp .if n \{\ .RS 4 .\} .nf $ git branch \-r \-l \*(Aq/\*(Aq \fB(1)\fR $ git for\-each\-ref \*(Aqrefs/remotes//\*(Aq \fB(2)\fR .fi .if n \{\ .RE .\} .sp .TS tab(:); r lw(\n(.lu*75u/100u). \fB1.\fR\h'-2n':T{ استفاده از \fB\-a\fR باعث درهم‌آمیختن \fI\fR با هر شاخه محلی که تصادفاً با همان الگوی \fI\fR پیشوند دارد خواهد شد\&. T} \fB2.\fR\h'-2n':T{ دستور \fBfor\-each\-ref\fR می‌تواند طیف گسترده‌ای از گزینه‌ها را بپذیرد\&. دستور \fBgit-for-each-ref\fR(1) را ببینید\&. T} .TE .RE .sp الگوها معمولاً نیاز به نقل‌قول (کوتیشن) دارند\&. .SH "نکات (NOTES)" .sp اگر در حال ایجاد شاخه‌ای هستید که می‌خواهید بلافاصله به آن بروید، آسان‌تر است که از دستور \fBgit\fR \fBswitch\fR همراه با گزینه \fB\-c\fR آن برای انجام این کار در قالب یک دستور واحد استفاده کنید\&. .sp گزینه‌های \fB\-\-contains\fR، \fB\-\-no\-contains\fR، \fB\-\-merged\fR و \fB\-\-no\-merged\fR چهار هدف مرتبط اما متمایز را برآورده می‌کنند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} گزینه \fB\-\-contains\fR \fI\fR برای یافتن تمام شاخه‌هایی استفاده می‌شود که در صورت بازنشانی پایه (rebase) یا اصلاح (amend) شدن \fI\fR به توجه ویژه نیاز خواهند داشت، چرا که آن شاخه‌ها شامل \fI\fR مشخص‌شده هستند\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} گزینه \fB\-\-no\-contains\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\-\-merged\fR برای یافتن تمام شاخه‌هایی به کار می‌رود که می‌توان آن‌ها را با خیال راحت حذف کرد، چرا که آن شاخه‌ها به طور کامل در \fBHEAD\fR گنجانده شده‌اند\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} گزینه \fB\-\-no\-merged\fR برای یافتن شاخه‌هایی استفاده می‌شود که کاندید ادغام در \fBHEAD\fR هستند، چرا که آن شاخه‌ها به طور کامل در \fBHEAD\fR گنجانده نشده‌اند\&. .RE .sp هنگام ترکیب چندین فیلتر \fB\-\-contains\fR و \fB\-\-no\-contains\fR، تنها ارجاع‌هایی نشان داده می‌شوند که حداقل شامل یکی از کامیت‌های \fB\-\-contains\fR بوده و هیچ‌یک از کامیت‌های \fB\-\-no\-contains\fR را شامل نشوند\&. .sp هنگام ترکیب چندین فیلتر \fB\-\-merged\fR و \fB\-\-no\-merged\fR، تنها ارجاع‌هایی نشان داده می‌شوند که حداقل از یکی از کامیت‌های \fB\-\-merged\fR قابل دستیابی بوده و از هیچ‌یک از کامیت‌های \fB\-\-no\-merged\fR قابل دستیابی نباشند\&. .SH "همچنین ببینید (SEE ALSO)" .sp \fBgit-check-ref-format\fR(1), \fBgit-fetch\fR(1), \fBgit-remote\fR(1), \m[blue]\fB"Understanding history: What is a branch?"\fR\m[]\&\s-2\u[1]\d\s+2 در راهنمای کاربری گیت\&. .SH "گیت (GIT)" .sp بخشی از مجموعه \fBgit\fR(1) .SH "یادداشت‌ها (NOTES)" .IP " 1." 4 "Understanding history: What is a branch?" .RS 4 \%file:///usr/share/doc/git-doc/user-manual.html#what-is-a-branch .RE