آشنایی با Git: شاخه ها (branch)

Git Branch

0 151

آشنایی با Git: شاخه ها (branch)

در این جلسه در مورد شاخه ها (branch) صحبت می کنیم. همانطور که قبلا توضیح داده ایم شاخه ها یک نسخه ی موازی (کپی) از پروژه ی اصلی هستند. زمانی که می خواهید ویژگی های جدیدی را در برنامه ی خود ایجاد کنید بهتر است از شاخه ها استفاده کنید تا اگر برنامه به مشکلی خورد (به طور مثال کدهای جدید با کدهای قبلی ناسازگاری داشتند) بتوانید بدون زحمت به نسخه ی قبلی برنامه تان برگردید.

نمایی از شاخه های مختلف یک پروژه ی فرضی
نمایی از شاخه های مختلف یک پروژه ی فرضی

شاخه ها history یا تاریخچه ی مستقل خودشان را دارند و تغییر در یک شاخه روی شاخه های دیگر اثری نخواهد داشت. البته اگر در آخر قابلیت جدید شما با برنامه سازگار بود و تکمیل کدها نهایی شد می توانید شاخه را در شاخه ی اصلی (master) یا هر شاخه ی دیگری ادغام کنید تا تمام تاریخچه و موارد دیگر یکجا قرار بگیرند. معمولا مزیت استفاده از شاخه ها در چند مورد زیر خلاصه می شود:

  • آخرین نسخه ی پایدار و سالم از برنامه محفوظ خواهد ماند.
  • می توانیم قابلیت های متعدد و زیادی را همزمان توسط افراد مختلف به برنامه ارائه کنیم (بدون آنکه کد های اصلی برنامه بهم بریزد).
  • توسعه دهندگان مختلف می توانند روی شاخه های مختلف از یک پروژه ی واحد کار کنند بدون اینکه در برنامه ی اصلی یا کدهای یکدیگر تغییراتی ایجاد کنند.
  • ایجاد نسخه های مختلف از یک قابلیت جدید، بررسی آن ها و در نهایت انتخاب بهترین و بهینه ترین روش برای ایجاد آن قابلیت.

1. ایجاد شاخه ی جدید

شاخه ی پیش فرض هر repository مستر (master) نام دارد. بنابراین هر repository حداقل یک شاخه به نام master خواهد داشت. برای ایجاد شاخه های بیشتر می توانیم از دستور زیر استفاده کنیم:

مشاهده این قسمت تنها برای افرادی که اشتراک جادویی داشته باشند، امکان‌پذیر است. با خرید اشتراک، به همه مطالب جادویی روکسوپلاس دسترسی داشته باشید.

این دستور یک شاخه ی جدید به نام amazing_new_feature ایجاد می کند. در حال حاضر این شاخه هیچ تفاوتی با شاخه ی master ما ندارد چرا که هنوز چیزی را تغییر نداده ایم.

نکته: استفاده از دستور git branch به صورت خالی به شما لیستی از شاخه های موجود را می دهد. در صورتی که به آن r- را نیز اضافه کنید (یعنی git branch -r) فقط شاخه هایی را می دهد که روی سرور (remote) قرار دارند.

2. تغییر شاخه ی کاری

برای مشاهده ی شاخه های موجود می توانید دستور git branch را اجرا کنید. با اجرای این دستور در پوشه ی git_exercise خودمان باید با چنین خروجی روبرو شویم:

مشاهده این قسمت تنها برای افرادی که اشتراک جادویی داشته باشند، امکان‌پذیر است. با خرید اشتراک، به همه مطالب جادویی روکسوپلاس دسترسی داشته باشید.

حالا شاخه ی amazing_new_feature ستاره دار شده است بنابراین در این شاخه هستیم.

3. ادغام شاخه ها

یک فایل متنی ساده ی دیگر به نام feature.txt بسازید (در همان پوشه ی git_exercise). حالا آن را به stage اضافه می کنیم:

مشاهده این قسمت تنها برای افرادی که اشتراک جادویی داشته باشند، امکان‌پذیر است. با خرید اشتراک، به همه مطالب جادویی روکسوپلاس دسترسی داشته باشید.

اگر به پوشه ی git_exercise بروید متوجه می شوید که فایل feature.txt ناپدید شده است! دلیل آن هم این است که این فایل هیچ وقت در شاخه ی master ساخته نشده است بنابراین در این قسمت نیز وجود ندارد! برای به وجود آوردن آن می توانیم از دستور git merge استفاده کنیم تا دو شاخه در هم ادغام شوند:

مشاهده این قسمت تنها برای افرادی که اشتراک جادویی داشته باشند، امکان‌پذیر است. با خرید اشتراک، به همه مطالب جادویی روکسوپلاس دسترسی داشته باشید.

جمع بندی جلسات اولیه

مشاهده این قسمت تنها برای افرادی که اشتراک جادویی داشته باشند، امکان‌پذیر است. با خرید اشتراک، به همه مطالب جادویی روکسوپلاس دسترسی داشته باشید.

امیدوارم از این قسمت لذت برده باشید. در قسمت بعد به بررسی موارد پیشرفته تر خواهیم پرداخت.

ترتیبی که روکسو برای یادگیری مطالب سری آشنایی با Git به شما توصیه می‌کند:

ارسال نظر

توجه:‌ آدرس ایمیل شما منتشر نخواهد شد.