نحوه لیست کردن و ایجاد شاخهها در گیت #
شاخهها در گیت، کار توسعه را ایزوله میکنند، بنابراین میتوانید بدون تأثیر بر کدبیس اصلی خود، تغییرات را اعمال کنید. فهرست کردن شاخهها، تمام خطوط توسعه موجود در مخزن شما را نشان میدهد. ایجاد یک شاخه جدید به شما امکان میدهد تا آزمایش کنید، اشکالات را برطرف کنید یا ویژگیهایی را مستقل از کد پایدار بسازید.
این مقاله توضیح میدهد که چگونه این git branchدستور شاخههای محلی و راه دور را فهرست میکند و چگونه میتوان شاخههای جدید را با استفاده از گیت به طور مؤثر ایجاد کرد.
پاسخ کوتاه #
اگر از قبل با گیت آشنا هستید و فقط به یک مرجع سریع نیاز دارید، از دستورات زیر برای فهرست کردن و ایجاد شاخهها استفاده کنید:
# List all local branches
$ git branch
# List remote branches
$ git branch -r
# List both local and remote branches
$ git branch -a
# Create a new branch
$ git branch <new-branch-name>گزینههای رایج برایgit branch #
این git branchدستور از چندین پرچم مفید برای مدیریت و بازرسی شاخهها پشتیبانی میکند:
| پرچم | توضیحات |
|---|---|
-r | فقط شاخههای راه دور را فهرست کنید. |
-a | نمایش همه شاخهها، شامل شاخههای محلی و شاخههای راه دور. |
-m | شاخه فعلی یا مشخص شده را تغییر نام دهید. |
-d | حذف یک شاخه (حذف ایمن، فقط در صورتی که شاخه به طور کامل ادغام شده باشد). |
-D | حذف اجباری یک شاخه، حتی اگر حاوی تغییرات ادغام نشده باشد. |
--merged | شاخههایی را که قبلاً در شاخه فعلی ادغام شدهاند، نمایش دهید. |
--no-merged | شاخههایی را که در شاخه فعلی ادغام نشدهاند، نمایش دهید. |
-v | آخرین کامیت را در هر شاخه نمایش دهید. |
ایجاد یک شاخه جدید #
ایجاد یک شاخه جدید در گیت به شما این امکان را میدهد که کارهای توسعه مانند رفع اشکال یا افزودن ویژگیها را از کدبیس اصلی جدا کنید.
سینتکس دستور #
git branch <branch-name>gitابزار خط فرمان Git را فراخوانی میکند.branch: شعب محلی را مدیریت میکند.<branch-name>: نام شاخهای که قرار است ایجاد شود.
نمایش فرمان #
- تمام شعب محلی را فهرست کنید.کنسول
$ git branchخروجی:
hotfix-header * mainعلامت ستاره نشان میدهد که شما در حال حاضر روی
mainشاخه هستید. - یک شاخه جدید با نام ایجاد کنید
feature-login.کنسول$ git branch feature-loginگیت شاخهی جدید را از
mainنوک شاخهی فعلی ایجاد میکند. - برای تأیید، دوباره شاخهها را فهرست کنید.کنسول
$ git branchخروجی:
feature-login hotfix-header * mainشاخه جدید
feature-loginدر کنار شاخههای موجود ظاهر میشود.
جابجایی بین شاخهها #
از دستور (موجود در Git 2.23 و بالاتر) برای تغییر شاخه کاری فعلی خود استفاده کنید git switch. این دستور، دایرکتوری کاری را بهروزرسانی میکند تا وضعیت شاخه انتخاب شده را منعکس کند.
سینتکس دستور #
git switch <branch-name>git switchشاخهی کاری فعلی را تغییر میدهد.<branch-name>: نام شاخه هدف.
به یک شاخه موجود بروید #
- شاخه فعلی را بررسی کنید.کنسول
$ git branchخروجی:
feature-login hotfix-header * mainعلامت ستاره، شاخه فعلی (
main) را مشخص میکند. - به
hotfix-headerشاخه تغییر دهید.کنسول$ git switch hotfix-headerخروجی:
Switched to branch 'hotfix-header' - شاخه فعال را تأیید کنید.کنسول
$ git branchخروجی:
feature-login * hotfix-header mainستاره اکنون به اشاره دارد
hotfix-header.
به یک شاخه جدید تغییر دهید #
-cاز پرچم باgit switchبرای ایجاد و رفتن به یک شاخه جدید در یک مرحله استفاده کنید .کنسول$ git switch -c developmentاین یک شاخه جدید به نام
developmentشاخه فعلی ایجاد میکند و آن را به شاخه فعال تبدیل میکند.- تغییر شاخه را تأیید کنید.کنسول
$ git branchخروجی:
* development feature-login hotfix-header mainستاره اکنون به اشاره دارد
development.
به یک شاخه از راه دور بروید #
برای ردیابی و رفتن به یک شاخهی ریموت که به صورت محلی وجود ندارد:
- شاخههای دوردست را بیاورید.کنسول
$ git fetch --all - شاخههای راه دور موجود را فهرست کنید.کنسول
$ git branch -rخروجی:
origin/main origin/feature-oauth ... - یک شاخه محلی ایجاد کنید و به آن سوئیچ کنید.کنسول
$ git switch --track origin/feature-oauthfeature-oauthگیت یک شاخه محلی جدید به نام linked to را بررسی میکندorigin/feature-oauth. - سوئیچ را تأیید کنید.کنسول
$ git branchخروجی:
... * feature-oauth feature-login hotfix-header main
ایجاد شاخه اضطراری #
یک شاخه اضطراری، شاخهای موقت است که برای ایزوله کردن رفع مشکلات فوری، مانند قطع شدن عملیات، وصلههای امنیتی یا اشکالات بحرانی ایجاد میشود. این رویکرد به شما امکان میدهد بدون ایجاد اختلال در کار جاری mainیا شاخههای ویژه، به مشکل رسیدگی کنید.
سینتکس دستور #
git switch -c <emergency-branch-name>-c: قبل از تعویض، یک شاخه جدید ایجاد میکند.<emergency-branch-name>: نام شاخه اضطراری که باید ایجاد شود.
گردش کار #
- ایجاد و رفتن به یک شاخه اضطراری.کنسول
$ git switch -c emergency-fixاین دستور یک شاخه جدید با نام ایجاد میکند
emergency-fixو آن را به شاخه فعال تبدیل میکند. - پس از اعمال تغییرات، به شاخه برگردید
main.کنسول$ git switch main - شاخه اضطراری را در ادغام کنید
main.کنسول$ git merge emergency-fix - پس از ادغام، شاخه اضطراری را حذف کنید تا فهرست شاخههایتان مرتب بماند.کنسول
$ git branch -d emergency-fix
نتیجه گیری #
در این مقاله، نحوه فهرست کردن و ایجاد شاخههای گیت با استفاده از دستورات git branchand را بررسی کردید git switch. همچنین یاد گرفتید که چگونه بین شاخهها جابجا شوید، ردیابی از راه دور را مدیریت کنید و اصلاحات اضطراری را با شاخههای موقت مدیریت کنید. این تکنیکها به سادهسازی گردش کار توسعه شما، جداسازی ایمن تغییرات و پشتیبانی از شیوههای مشارکتی گیت کمک میکنند. برای استفاده و پیکربندی پیشرفته، به مستندات رسمی گیت مراجعه کنید .