فهرست مطالب:

چه زمانی یک شعبه را تغییر دهیم؟
چه زمانی یک شعبه را تغییر دهیم؟
Anonim

به طور خلاصه، وقتی به دنبال ترکیب تغییرات از یک شاخه Git به شاخه دیگر هستید:

  1. در مواردی که می خواهید مجموعه ای از commit ها به وضوح در تاریخ با هم گروه بندی شوند از ادغام استفاده کنید.
  2. هنگامی که می‌خواهید یک تاریخچه تعهد خطی داشته باشید از rebase استفاده کنید.
  3. از rebase در شعبه عمومی/اشتراک‌گذاری شده استفاده نکنید.

rebasing یک شاخه چه کاری انجام می دهد؟

از منظر محتوا، rebasing عبارت است از تغییر پایه شاخه خود از یک تعهد به دیگری و به نظر می رسد که شعبه خود را از یک commit دیگر ایجاد کرده اید. در داخل، Git این کار را با ایجاد commit های جدید و اعمال آنها در پایگاه مشخص شده انجام می دهد.

آیا باید دوباره پایه گذاری کنم یا ادغام کنم؟

اگر می خواهید تاریخچه را کاملاً مشابه آنچه اتفاق افتاده است ببینید، باید از merge استفاده کنید. Merge تاریخ را حفظ می کند در حالی که rebase آن را بازنویسی می کند. Rebasing برای ساده‌سازی یک تاریخچه پیچیده بهتر است، شما می‌توانید تاریخچه commit را با rebase تعاملی تغییر دهید.

چرا rebase Git بد است؟

Rebasing می تواند خطرناک باشد! بازنویسی تاریخچه شاخه های مشترک مستعد شکست کار تیمی است… یکی دیگر از عوارض جانبی تغییر پایه با شاخه های راه دور این است که شما باید در نقطه ای به زور فشار دهید. بزرگترین مشکلی که در Atlassian دیده‌ایم این است که مردم فشار را مجبور می‌کنند – که خوب است – اما فشار git را تنظیم نکرده‌اند.

Rebase در شاخه توسعه چیست؟

در مقابل، rebasing خطوط توسعه را با بازنویسی تغییرات از شاخه منبع متحد می کند، به طوری که آنها به عنوان فرزندان شاخه مقصد به نظر می رسند - به طور مؤثر وانمود می کنند که آن تعهدات بوده اند. در بالای شاخه مقصد تمام طول نوشته شده است.

توصیه شده: