شبكة تعلم مع ناو

ما الفرق بين git merge وgit rebase؟

  • git merge: يدمج فرعين ويحافظ على التاريخ كما حدث، وغالبًا يضيف commit دمج.
  • git rebase: يعيد تطبيق commits فرعك فوق فرع آخر، فيصبح التاريخ خطًا مستقيمًا.
# merge main into your branch
git switch feature
git merge main

# or replay your work on top of main
git switch feature
git rebase main

متى أستخدم كلًّا منهما؟

  • merge: آمن دائمًا، ويحفظ ما حدث فعلًا.
  • rebase: لتنظيف فرعك المحلي قبل مشاركته، فيكون التاريخ أوضح.

قاعدة مهمة: لا تعمل rebase على commits شاركتها مع الآخرين، لأنه يعيد كتابة التاريخ ويربك من سحبها.

اختبر نفسك

خمسة أسئلة سريعة، مع الإجابة والشرح بعد كل سؤال.