شرح صفوف ومحتوى الفقرة
يقارن الجدول التالي بين استراتيجيات دمج طلبات السحب الثلاث في GitHub لاختيار السياسة الأنسب لفريقك:
| استراتيجية الدمج | الأثر على سجل الالتزامات | هل تنشئ عقدة دمج؟ | الحالة الأنسب للاستخدام |
|---|---|---|---|
| Create a merge commit | تحتفظ بكل التزامات الفرع وتضيف عقدة دمج | نعم --no-ff | عند الرغبة في توثيق حدود كل فرع ميزة تاريخياً |
| Squash and merge | تضغط كل التزامات الطلب في التزام واحد على main | لا — التزام خطي واحد | عند الرغبة في التزام واحد نظيف لكل ميزة أو طلب سحب |
| Rebase and merge | تعيد صف التزامات الطلب خطياً فوق قمة main | لا — عدة التزامات خطية | عندما تكون كل التزامات الفرع مرتبة وذرية مسبقاً |
خلاصة المعرفة ومحطة الانتقال
ملخص الدرس
حصاد الدرسمراجعة مركّزة لأهم المفاهيم والقواعد الهندسية التي أتقنتها في هذا الدرس قبل التطبيق العملي
ماذا تعلّمت في هذا الدرس؟
يقترح طلب السحب Pull Request دمج فرع المقارنة compare في فرع الأساس base بعد اجتياز مراجعة الكود وفحوصات CI. استخدم Closes #ID لإغلاق التذاكر تلقائياً، وادفع التزامات جديدة لتحديث الطلب المفتوح، واختر استراتيجية الدمج المناسبة.
الخطوة التالية والدرس القادم
انتقل إلى الدرس التالي لتعلّم وسوم الإصدارات git tag وإطلاقات GitHub Releases git-tag-and-github-releases لتوثيق إصدارات مشروعك رسمياً.