در سراسر جهان، Git پر استفاده ترین سیستم کنترل نسخه (VCS) برای نظارت و کنترل پروژه است. همچنین یک محیط کاری پراکنده و مشارکتی را ارائه می دهد که همکاری را تشویق می کند.
شاخهبندی یکی از ضروریترین ویژگیهای Git است، زیرا به شما امکان میدهد یک کانال مجزا برای مجموعهای از تغییرات خاص مانند وصله باگ، توسعه ویژگیهای جدید یا آزمایش ایجاد کنید، بدون اینکه روی شاخه اصلی تأثیر بگذارد.
در مقایسه با سایر عملیات Git، انشعاب یک روش بسیار ساده است. این به شما امکان می دهد از پایه کد اصلی منحرف شوید.
Branching به شما این امکان را می دهد که سریعتر با توسعه دهندگان دیگر همکاری کنید و آزادی زیادی را در جریان کاری خود به شما ارائه می دهد. همچنین به شما این امکان را میدهد تا بدون تأثیرگذاری بر روی بقیه پایگاه کد روی یک ویژگی جدید کار کنید.
مکانیسم انشعاب Git امکان ایجاد شعبه های جدید در داخل یک پروژه را فراهم می کند.
سپس ممکن است از این شاخه های اضافی برای آزمایش تغییرات کد بدون تداخل با کد اصلی پروژه استفاده شود. در صورت موفقیت آمیز بودن تنظیمات، شاخه را می توان دوباره به شاخه اصلی ادغام کرد.
با این حال، مواقعی وجود دارد که باید یک شاخه Git را به صورت محلی حذف کنید، اما نه از راه دور. برای اطلاع از نحوه انجام آن به ادامه مطلب مراجعه کنید.
Git Branch چیست؟
Git می تواند چندین خط کار را به لطف انشعاب ردیابی کند. این به شما امکان می دهد تا روی چندین نسخه از پروژه خود به طور همزمان کار کنید.
بسیاری از پروژهها یک شعبه اصلی پایدار را حفظ میکنند، در حالی که ویژگیهای جدید اضافه میکنند یا اشکالات را در یک شاخه توسعه یا آزمایش رفع میکنند.
وقتی مدیران پروژه کاملاً مطمئن باشند که تغییرات ایجاد شده در شاخه Dev معیارها را برآورده می کنند، می توانند این تغییرات را در شاخه اصلی ادغام کنند. برای برخی پروژه های بزرگتر، این چرخه اغلب به طور نامحدود تکرار می شود.
کار با شاخه های توسعه Git یک رویکرد فوق العاده برای کار با برنامه ما و در عین حال پیگیری نسخه های آن است. یک شاخه توسعه، به طور کلی، یک شکاف در وضعیت کد است که مسیر جدیدی را برای پیشرفت آن ایجاد می کند.
می تواند به موازات سایر شاخه های Git اجرا شود، می توانید ایجاد کنید. امکان افزودن ویژگی های جدید به کد ما به صورت سازمان یافته و دقیق وجود دارد.
چرا و چه زمانی نیاز به حذف دارد؟
این یک روش معمول تعمیر و نگهداری است که شاخههای Git را زمانی که دیگر مورد استفاده قرار نمیگیرند حذف کنید، اگرچه این همیشه جهانی یا قابل درک نیست.
چرا باید شاخه های قدیمی Git را از مخزن خود حذف کنید؟ دو دلیل اساسی برای این وجود دارد:
- آنها بی نیاز هستند بیشتر شعبهها، بهویژه آنهایی که به درخواست کشش متصل هستند که در نهایت تأیید شده است، هیچ عملکردی ندارند.
- آنها منبع سردرگمی هستند. آنها هیچ هزینه فنی قابل توجهی اضافه نمی کنند، اما کار با فهرست های شعب موجود در مخزن را برای انسان چالش برانگیزتر می کنند.
شاخه ها را می توان به طور ایمن و بدون ترس از دست دادن هرگونه تغییر حذف کرد.
سناریوی زیر را در نظر بگیرید: یک شاخه وصله-1 قرار است از طریق یک درخواست کشش با شاخه اصلی ادغام شود. قبل از ادغام، Master و Patch-1، هر کدام به تجدید نظرهای مختلف در تاریخچه git commit اشاره می کنند.
پس از ادغام (اگر یک commit جدید ادغام اضافه شود)، Master و Patch-1 هر دو به تعهد ادغام جدید پیوند میدهند. در این مرحله، درخواست کشش به پایان می رسد، و تمام فشارهای آینده باید به جای وصله-1 به master ارسال شوند.
Local vs Remote Branch در Git
Remote Branch – در یک سیستم جداگانه قرار دارد، معمولاً سروری که توسعه دهندگان ممکن است به آن دسترسی داشته باشند. هنگامی که یک شاخه از راه دور حذف می شود، برای همه کاربران حذف می شود.
شعبه محلی - در سیستم محلی، یک شعبه محلی ذخیره می شود. حذف یک شعبه محلی هیچ تأثیری بر شعبه دور ندارد.
چگونه شعب را به صورت محلی حذف کنیم؟
این به شما اجازه نمیدهد شعبهای را که اکنون روی آن کار میکنید حذف کنید، بنابراین مطمئن شوید که شعبهای را که حذف نمیکنید، بررسی کنید. بیایید با نحوه حذف یک شاخه محلی شروع کنیم.
- برای شروع، دستور (git branch -a) را اجرا کنید تا همه شاخه ها (چه محلی و چه از راه دور) را ببینید.
- سپس با استفاده از دستور (git branch -d) و به دنبال آن نام شاخه ای که می خواهید حذف کنید، می توانید آن را حذف کنید.
اگر بخواهید شاخه ای را با تغییرات ادغام نشده حذف کنید، پیام خطای زیر ظاهر می شود:
همانطور که پیام بالا نشان می دهد، برای حذف اجباری یک شاخه، از گزینه -D استفاده کنید که یک میانبر برای -delete -force است.
لطفاً به خاطر داشته باشید که حذف یک شاخه ادغام نشده منجر به از بین رفتن تمام تغییرات آن شاخه می شود.
اگر بخواهید شعبه فعلی را حذف کنید، پیام زیر را مشاهده خواهید کرد:
در حال حاضر نمی توانید شاخه ای را که در آن هستید حذف کنید. ابتدا به شاخه دیگری بروید، سپس نام شعبه را حذف کنید:
نقطه ضعف حذف یک شاخه
یک عیب احتمالی برای حذف شاخه ها این است که هر گونه پیوند به مکان شعبه شکسته می شود (در GitHub و غیره).
من به ندرت پیوندهای دائمی به شاخه های غیر اصلی دارم، و اگر بخواهم به هر کاری در یک شاخه خاص متصل شوم، احتمالاً پس از تبدیل شدن به درخواست کشش این کار را انجام خواهم داد (در این صورت به کشش-درخواست).
کلمات نهایی
دانستن نحوه استفاده از شاخه های توسعه برای ایجاد برنامه شما به شیوه ای سیستماتیک بسیار مهم است. مراقب ساختار کد خود در شاخه های مختلف باشید.
اگر در هر نقطه ای از یک عملیات پیچیده مطمئن نیستید، خواندن آن همیشه ایده خوبی است اسناد رسمی Git روی شاخه ها
پاسخ دهید