تفريع ودمج التغييرات الخاصة بك

مكتمل

أثناء قيامك بالعمل على تعليمة Bicep البرمجية، من الشائع أن تحتاج إلى القيام بأكثر من شيء واحد في وقت واحد. على سبيل المثال، فيما يلي سيناريوهان للعمل مع موقع ويب شركة الألعاب الخاصة بك:

  • يريد فريق تطوير موقع الويب الخاص بك مساعدتكم في تحديث ملفات Bicep مع إجراء تغييرات ملحوظة. ومع ذلك، لا يريد فريق التطوير تطبيق هذه التغييرات بعد. يجب أن تكون قادراً على إجراء تعديلات طفيفة على الإصدار المباشر الحالي لموقع الويب بالتوازي مع العمل على الإصدار الجديد.
  • أنت تعمل على إجراء تغييرات تجريبية تعتقد أنها ستساعد على تحسين أداء موقع الويب. ومع ذلك، تعد هذه التغييرات أولية. كما أنك لا تريد تطبيقها على الإصدار المباشر لموقع الويب حتى تكون جاهزاً.

في هذه الوحدة، يمكنك التعرف على فروع Git.

إشعار

يتم عرض الأوامر في هذه الوحدة لتوضيح المفاهيم. لا تشغّل الأوامر الآن. ستتدرب على ما تتعلمه هنا قريبا.

ما هي فروع Git؟

يوفر الفرع طريقة للحصول على نسخ نشطة متعددة من ملفاتك. يمكنك إنشاء الفروع والتبديل بينها وقتما تشاء. عند الانتهاء من العمل مع أحد الفروع، يمكنك دمجه في فرع آخر. أو يمكنك حذفه، مما يؤدي إلى إزالة جميع التغييرات.

من الشائع استخدام الفروع لجميع أعمالك. غالباً ما تقوم بتعيين فرع واحد كفرع أساسي يمثل الإصدار الجيد أو المباشر لملفاتك. حسب اصطلاح التسمية، يسمى هذا الفرع عادة بالفرع الرئيسي. يمكنك إنشاء أي عدد من الفروع الأخرى. عندما تكون التغييرات التي ستقوم بإجرائها على فرع جاهزة، يمكنك دمج الفرع في الفرع الرئيسي.

إنشاء فرع وسحبه

إن إنشاء فرع بمثابة أمر سريع وسهل في Git. هناك بعض الطرق للقيام بذلك، ولكن أسهل طريقة هي عادة استخدام الأمر git checkout. وفيما يلي مثال على كيفية إنشاء فرع جديد باسم التغييرات التجريبية الخاصة بي:

git checkout -b my-experimental-changes

يقوم هذا الأمر في الواقع بأمرين: يقوم بإنشاء التغييرات التجريبية الخاصة بي، ويقوم بسحب الفرع الذي تم إنشاؤه حديثاً. تعني عملية السحب أن نسخة الملفات التي تراها في المجلد الخاص بك ستعكس ما هو موجود في الفرع. إذا كان لديك فرعان مع مجموعات مختلفة من التغييرات، فتحقق من فرع واحد ثم يسمح لك الآخر بالتنقل بين مجموعتين من التغييرات.

يمكنك التبديل إلى فرع موجود باستخدام الأمر git checkout أيضاً. في هذا المثال، قم بسحب الفرع الرئيسي:

git checkout main

إشعار

يجب عليك عادة تثبيت التغييرات الخاصة بك قبل أن تتمكن من سحب فرع مختلف. سوف يحذرك Git إذا لم تتمكن من عملية السحب هذه.

العمل على أحد الفروع

بعد التبديل إلى فرع، يمكنك تثبيت الملفات كالمعتاد. في الواقع، كل ما قمت به حتى الآن كان في أحد الفرع. كنت تعمل على الفرع الرئيسي، وهو الفرع الافتراضي عند إنشاء مستودع جديد.

عند إجراء بعض التغييرات أثناء سحب فرع، يتم اقتران التثبيت بالفرع. عند التبديل إلى فرع آخر، ربما لن ترى التثبيت في المحفوظات git log حتى تقوم بدمج الفرع.

دمج الفروع

الفروع هي طريقة رائعة لفصل العمل قيد التقدم الخاص بك من الإصدار المباشر الحالي لتعليمة Bicep البرمجية الخاصة بك. ولكن بعد الانتهاء من إجراء تغييرات على ملفاتك الموجودة على فرع، غالباً ما تريد دمج التغييرات مرة أخرى إلى الفرع الرئيسي.

عندما تعمل على فرع واحد، يمكنك دمج تغييرات فرع آخر في الفرع الحالي الخاص بك باستخدام الأمر git merge.

إشعار

تأكد من سحب فرع وجهة الدمج (غالبا ما يسمى الفرع الهدف) قبل قيامك بعملية الدمج. تذكر أنك تقوم بدمج من فرع آخر في فرع العمل الحالي الخاص بك.

وفيما يلي مثال يوضح كيف يمكنك سحب الفرع الرئيسي ومن ثم دمج التغييرات من فرع التغييرات التجريبية الخاصة بي إلى الفرع الرئيسي. أخيراً، ستقوم بحذف فرع التغييرات التجريبية الخاصة بي لأنك لم تعد بحاجة إليه.

git checkout main
git merge my-experimental-changes
git branch -d my-experimental-changes

تلميح

عند العمل مع أشخاص آخرين، فمن الشائع استخدام طلبات السحب لدمج التغييرات التي قمت بإجرائها بدلاً من دمج الفروع مباشرةً. ستتعرف على المزيد عن التعاون وطلبات السحب قريباً.

تعارضات الدمج

عندما يدمج Git التغييرات من فرع إلى آخر، فإنه يبحث عن الملفات التي تم تعديلها ويحاول دمج التغييرات معاً. في بعض الأحيان، قد تكون أجريت تغييرات على نفس خطوط التعليمة البرمجية في فرعين مختلفين. في هذه الحالات، لا يمكن لـ Git اختيار الإصدار الصحيح للتعليمة البرمجية، لذلك سيقوم بدلاً من ذلك بإنشاء تعارض الدمج.

لا نناقش تعارضات الدمج بعمق في هذه الوحدة، ولكن من المهم معرفة أن تعارضات الدمج يمكن أن تحدث. وهو أكثر شيوعا عند التعاون مع أشخاص آخرين. في ملخص هذه الوحدة، نقدم ارتباطاً لمزيد من المعلومات حول كيفية مساعدة Git وVisual Studio Code في حل تعارضات الدمج.

مهام سير عمل Git

في هذه الوحدة، ستتعلم فقط أساسيات الفروع. ومع ذلك، فإن الفروع قوية وتمنحك المرونة في كيفية عملك. على سبيل المثال، يمكنك إنشاء فروع من الفروع الأخرى ودمج فرع بأي فرع آخر. يمكنك استخدام الفروع لإنشاء جميع أنواع مهام سير العمل المختلفة التي تدعم الطريقة التي ترغب أنت وفريقك في العمل بها.

في هذه الوحدة، نحن نستخدم سير عمل بسيط يسمى التطوير القائم على الجذع. في سير العمل هذا، لديك فرع جذع واحد. على سبيل المثال، نستخدم الأساسي في أمثلة هذه المقالة. يمثل هذا الفرع النسخة الجيدة المعروفة من التعليمات البرمجية الخاصة بك. يمكنك إنشاء فروع من هذا الجذع عند إجراء تغييرات أو القيام بأي عمل.

يثبط التطوير القائم على الجذع من إجراء تغييرات مباشرة على الفرع الجذع. تحاول الاحتفاظ بالفروع الأخرى لفترة قصيرة فقط، مما يساعد على تقليل تعارضات الدمج. ثم تقوم بدمج وحذف هذه الفروع أثناء إكمال أجزاء من العمل.

هناك مهام سير عمل أخرى شائعة في بيئات الفريق حيث قد ترغب في التحكم في عدد المرات التي تحرر فيها تغييراتك. في ملخص هذه الوحدة، نقدم ارتباطات لمزيد من المعلومات حول مهام سير عمل Git.