العمل مع الدمج والحذف الفرعي
دعنا أولاً ننشئ فرعًا رئيسيًا ، ونضع بعض الالتزامات ، وننشئ فرعًا جديدًا يسمى الميزات ، ونضيف بعض الالتزامات ، ثم نعود للإتقان والالتزام مرة أخرى. هذه هي الأوامر:
$مكديرmygame
$قرص مضغوطmygame
$بوابة الحرف الأول
$رما - طرد - قذف قرار التصميم 1: Brainstarm >>design.txt
$إضافة بوابة -إلى
$بوابة الالتزام م C0: بدء المشروع
$رما - طرد - قذف قرار التصميم 2: اكتب كود >>design.txt
$إضافة بوابة -إلى
$بوابة الالتزام م 'C1: التعليمات البرمجية المرسلة'
$فرع بوابةالميزات
$بوابة الخروجالميزات
$رما - طرد - قذف 'إضافة ميزة 1' >>feature.txt
$إضافة بوابة -إلى
$بوابة الالتزام م 'C2: الميزة 1'
$رما - طرد - قذف 'إضافة ميزة 2' >>feature.txt
$إضافة بوابة -إلى
$بوابة الالتزام م 'C3: الميزة 2'
$بوابة الخروجرئيسي - سيد
$رما - طرد - قذف 'تعديل الماجستير مرة أخرى' >>design.txt
$إضافة بوابة -إلى
$بوابة الالتزام م 'C4: ماجستير معدل'
خلقت الأوامر المذكورة أعلاه الموقف التالي:
يمكنك التحقق من تاريخ الفرعين لمعرفة الالتزامات التي لديهم:
$حالة بوابة
على رئيس الفرع
لا شيء للالتزام ، دليل العمل نظيف
$سجل بوابة --خط واحد
2031b83 C4: تم تعديله بشكل رئيسي
1c0b64c C1: كود مقدم
$بوابة الخروجالميزات
تحولت إلى فرع'الميزات'
$سجل بوابة --خط واحد
93d220b C3: الميزة2
ad6ddb9 C2: الميزة1
1c0b64c C1: كود مقدم
ec0fb48 C0: تم بدء المشروع
لنفترض الآن أنك تريد إحضار جميع التغييرات من فرع الميزات إلى فرعنا الرئيسي. سيكون عليك بدء العملية من وجهة الدمج. نظرًا لأننا نريد الاندماج في الفرع الرئيسي ، فأنت بحاجة إلى بدء العملية من هناك. لذلك دعونا نتحقق من الفرع الرئيسي:
$بوابة الخروجرئيسي - سيدتحولت إلى فرع'رئيسي - سيد'
$حالة بوابة
على رئيس الفرع
لا شيء للالتزام ، دليل العمل نظيف
الآن دعونا ننشئ الدمج:
$دمج بوابةالميزات
إذا لم تكن هناك أي تعارضات في الدمج ، فسيتم فتح محرر نص بالتعليقات:
فرع الدمج'الميزات'# الرجاء إدخال رسالة الالتزام لتوضيح سبب ضرورة هذا الدمج ،
# خاصةً إذا كان يدمج تحديثًا أوليًا محدثًا في فرع موضوع.
#
# سيتم تجاهل السطور التي تبدأ بـ '#' وإلغاء الرسالة الفارغة
# الالتزام.
يمكنك تعديل التعليقات أو قبول التعليقات الافتراضية. يجب أن يظهر ناتج الدمج مثل هذا:
الدمج الذي تم بواسطة'العودية'إستراتيجية.feature.txt| 2++
1 ملفتغير،2الإدخالات(+)
وضع الإنشاء100644feature.txt
بعد الدمج ، يكون لديك الشرط التالي:
إذا قمت بفحص السجلات ، ستجد:
$حالة بوابةعلى رئيس الفرع
لا شيء للالتزام ، دليل العمل نظيف
$سجل بوابة --خط واحد
46539a3 C5: دمج الفرع'الميزات'
2031b83 C4: تم تعديله بشكل رئيسي
93d220b C3: الميزة2
ad6ddb9 C2: الميزة1
1c0b64c C1: كود مقدم
ec0fb48 C0: تم بدء المشروع
لقد نجحت في دمج التغييرات. ومع ذلك ، لا يزال فرع الميزة موجودًا.
$فرع بوابة -إلىالميزات
*رئيسي - سيد
يمكنك حذفه بالأمر التالي:
$فرع بوابة -دالميزاتإذا قمت بالتحقق الآن ، يجب أن ترى الفرع الرئيسي فقط:
$فرع بوابة -إلى*رئيسي - سيد
استنتاج
تأكد من التحقق بانتظام من الفروع غير المستخدمة وحذفها. تريد الحفاظ على نظافة المستودع الخاص بك لتسهيل التنقل والفهم.