مدیریت شاخهها
پیشنمایش دستور
استفاده
git branch [گزینهها] [نام شاخه]
موارد کاربرد رایج
- نمایش شاخههای محلی:
git branch - ایجاد شاخه جدید:
git branch new-feature - حذف شاخه:
git branch -d old-feature - تغییر نام شاخه:
git branch -m old-feature new-feature
مثالها
git branch # List local branches git branch -r # List remote branches git branch -a # List all branches git branch new-feature # Create new branch git branch -d old-feature # Delete local branch git branch -D old-feature # Force delete local branch git branch -m old new # Rename branch
دقیقا چه میکند؟
دستور git branch برای مدیریت شاخهها در گیت استفاده میشود. این دستور به شما اجازه میدهد شاخههای جدید ایجاد کنید، شاخههای موجود را حذف یا تغییر نام دهید، و همچنین میتوانید شاخههای remote و merge شده را مشاهده کنید. این ابزار برای پروژههای چندشاخهای در گیت بسیار ضروری است.
مقایسه بین git branch و git checkout
مقایسه ویژگیها
| ویژگی | git branch |
git checkout |
|---|---|---|
| هدف | مدیریت شاخهها (ایجاد، لیست، حذف، تغییر نام و ...) | سوئیچ کردن بین شاخهها یا بازگرداندن فایلهای درخت کاری |
| ایجاد شاخه | git branch new-branch |
git checkout -b new-branch |
| انتقال به شاخه | ندارد | git checkout branch-name |
| حذف شاخه | git branch -d branch-name |
ندارد |
| تغییر نام شاخه | git branch -m old-name new-name |
ندارد |
| ردیابی شاخههای remote | git branch -r (نمایش شاخههای remote) |
git checkout branch-name (اگر شاخه در حال حاضر در دسترس باشد یا ایجاد یک شاخه ردیابی) |
| بازگرداندن فایلها | ندارد | git checkout -- (بازگرداندن فایل) |
اشتباهات رایج
- سعی در حذف شاخه جاری: نمیتوانید شاخهای که در حال حاضر روی آن هستید را حذف کنید.
- فراموشی commit یا stash تغییرات: حذف یا force-deleting شاخهها بدون ذخیرهسازی تغییرات، ممکن است باعث از دست رفتن کارهای غیر commited شود.
- نام اشتباه شاخهها: همیشه نام شاخهای که میخواهید استفاده کنید را چک کنید تا از خطاها جلوگیری کنید.
بهترین شیوهها
- قبل از حذف شاخهها، اطمینان حاصل کنید که تغییرات خود را commit یا stash کردهاید تا از دست رفتن کار جلوگیری کنید.
- از نامهای توصیفی برای شاخهها استفاده کنید تا هدف آنها مشخص باشد (مثلاً
feature/add-login). - قبل از force-deleting یک شاخه، مطمئن شوید که تمام تغییرات merge شده یا پشتیبانگیری شدهاند تا از دست رفتن اطلاعات جلوگیری کنید.
- از پرچمهای
--mergedو--no-mergedبرای بررسی شاخههای آماده حذف یا نیاز به ادغام استفاده کنید.
محدودیتها
- نمیتوانید شاخهای که در حال حاضر روی آن هستید را حذف کنید. برای حذف شاخه باید به شاخه دیگری بروید.
- حذف شاخه غیر موجود باعث ایجاد خطا میشود.
- حذف اجباری یک شاخه ممکن است باعث از دست رفتن تغییرات غیر merge شده شود، اگر آنها commit یا stash نشده باشند.
نحوه استفاده
برای استفاده از دستور git branch و گزینههای مختلف آن برای ایجاد، حذف یا تغییر نام شاخهها، از مثالهای زیر استفاده کنید:
git branch -d: حذف شاخه مورد نظر، فقط در صورتی که به طور کامل در شاخه فعلی ادغام شده باشد.git branch -D: حذف اجباری شاخه، حتی اگر تغییرات merge نشده باشد.git branch -m: تغییر نام یک شاخه موجود به نام جدید.git branch -a: نمایش تمامی شاخهها، هم محلی و هم remote.git branch -r: نمایش شاخههای remote، مفید برای مشاهده شاخههای موجود در مخازن دور.
نمای کلی
دستور git branch یکی از ابزارهای اصلی در مدیریت شاخهها در گیت است و امکانات متعددی برای ایجاد، حذف و تغییر نام شاخهها به شما میدهد. با استفاده از این دستور میتوانید روند کاری خود را با سازماندهی دقیقتری پیش ببرید.