انتقل إلى محتوى الدرس

Why Merge Conflicts Occur متى ولماذا يحدث التعارض

افهم متى ولماذا يحدث تعارض الدمج عند تعديل نفس الأسطر في فرعين، واقرأ علامات التعارض الثلاث بدقة، واحسم التعارض أو ألغِه بأمان.
3 صفوف تعليمية
Version Control
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

في أغلب الأحيان، ينجح Git في دمج التعديلات الموزعة على ملفات مختلفة أو حتى فقرات متباعدة داخل نفس الملف تلقائياً. لكن تعارض الدمج (Merge Conflict) يقع في حالتين محددتين:

  • تعديل نفس السطر بطريقتين مختلفتين: عندما يغيّر الفرع الحالي (HEAD) والفرع المراد دمجه نفس الأسطر البرمجية داخل نفس الملف منذ افتراقهما عن الجد المشترك.
  • تعارض الحذف مع التعديل: عندما يحذف أحد الفرعين ملفاً بينما يجري الفرع الآخر تعديلات داخل ذلك الملف.

وبدلاً من التخمين العشوائي وإتلاف الكود، يوقف Git عملية الدمج مؤقتاً ويطلب منك اتخاذ القرار الهندسي بالحسم.

الصف 2 كود برمجي
Shell
# Attempt to merge a branch with competing line edits
git switch main
git merge feat-pricing
# Auto-merging index.html
# CONFLICT (content): Merge conflict in index.html
الصف 3 ملاحظة هامة