مراجعة طلب سحب وإرساله

مكتمل

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

تشريح العلاقات العامة

لقطة شاشة لطلب سحب مفتوح.

يظهر طلب السحب مستخدم GitHub الذي أنشأ طلب السحب ومستودع الوجهة والفرع الذي تم إنشاء طلب السحب فيه. تحتوي PRs على عدة علامات تبويب في الأعلى، بما في ذلك:

  • علامة تبويب المحادثة: لوحة معلومات حيث يمكنك عرض التعليقات والرد عليها من المتعاونين الآخرين، والاطلاع على قائمة الإعلامات خلال عملية الإنشاء والمراجعة، واستخدام أتمتة التعليقات لتنفيذ الإجراءات.
  • علامة التبويب "Commits": سجل بالتغييرات التي تم إجراؤها على هذا الفرع.
  • علامة تبويب الملفات التي تم تغييرها: مقارنة بين الملفات (الملفات) التي تم تغييرها في PR مع حالتها السابقة.

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

غالبا ما تحتوي PRs على تسميات مرفقة للإشارة إلى حالتها، مثل draft تحديد مسودة PRs غير الجاهزة للمراجعة، أو do-not-merge ل PRs جديدة أو غير مراجعة.

التحقق من الصحة

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

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

  • قابلية الدمج: يحدث اختبار أساسي لدمج GitHub أولا للتحقق مما إذا كانت التغييرات المقترحة في الفرع الخاص بك تتعارض مع الفرع الوجهة. إذا أشار طلب السحب إلى فشل هذا الاختبار، فيجب عليك التوفيق بين المحتوى الذي يسبب تعارض الدمج قبل متابعة المعالجة.
  • اتفاقية ترخيص المساهمة (CLA): إذا كنت تساهم في مستودع عام ولم تكن موظفا في Microsoft، اعتمادا على حجم التغييرات المقترحة، فقد يطلب منك إكمال CLA قصير في المرة الأولى التي ترسل فيها طلب السحب إلى هذا المستودع. بعد مسح خطوة CLA، ستتم معالجة طلب السحب الخاص بك.
  • التسمية: يتم تطبيق التسميات تلقائيا على طلب السحب الخاص بك للإشارة إلى حالتها أثناء مرورها عبر سير عمل التحقق من الصحة. على سبيل المثال، قد تتلقى do-not-merge PRs الجديدة التسمية تلقائيا، ما يشير إلى أن طلب السحب لم يكمل بعد خطوات التحقق من الصحة والمراجعة وتسجيل الخروج.
  • التحقق من الصحة والبناء: تتحقق عمليات التحقق التلقائية مما إذا كانت تغييراتك تجتاز اختبارات التحقق من الصحة. قد تؤدي اختبارات التحقق من الصحة إلى تحذيرات أو أخطاء، ما يتطلب منك إجراء تغييرات على ملف واحد أو أكثر في PR الخاص بك قبل دمجه. تتم إضافة نتائج اختبار التحقق من الصحة كتعليق في طلب السحب الخاص بك لمراجعتك، وقد يتم إرسالها إليك بالبريد الإلكتروني أيضا.
  • التقسيم المرحلي: يتم نشر صفحات المقالة المتأثرة بالتغييرات تلقائيا في بيئة التقسيم المرحلي للمراجعة عند التحقق من الصحة والبناء بنجاح. تظهر معاينة عناوين URL في تعليق PR.
  • الدمج التلقائي: قد يتم دمج PR تلقائيا إذا اجتاز اختبار التحقق من الصحة ومعايير معينة. في هذه الحالة، لا تحتاج إلى القيام بأي شيء آخر.

المراجعة وتسجيل الخروج

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

استخدم أتمتة التعليق لتنفيذ إجراءات مهمة في PR. تتيح أتمتة التعليقات للمستخدمين تعيين التسمية المناسبة إلى طلب السحب لتحديث حالتها أو تصنيفها. إذا كنت تعمل في مستودع حيث تم تنفيذ أتمتة التعليق، فاستخدم تعليقات علامة التجزئة لتعيين التسميات أو تغييرها، أو إغلاق طلب السحب، أو إيقاف الدمج مؤقتا. على سبيل المثال، عند الانتهاء من إجراء تغييرات، اكتب التعليق #sign-off لتغيير تسمية PR من do-not-merge إلى ready-for-review.

استخدم التعليقات في الجدول التالي لتنفيذ الإجراءات الرئيسية في طلب السحب الخاص بك:

تعليق علامة التجزئة ماذا تفعل
#sign-off يعين ready-to-merge التسمية تلقائيا للسماح للمراجعين في المستودع بمعرفة أن PR جاهز للمراجعة/الدمج.

إذا لم تكن المؤلف المدرج وحاولت تسجيل الخروج على repo PR عام باستخدام #sign-off التعليق، يتم تحديث PR للإشارة إلى أن الكاتب فقط يمكنه تعيين التسمية.
#hold-off يزيل التسمية ready-to-merge في حالة تغيير رأيك أو ارتكاب خطأ.
#please-close إغلاق طلب السحب إذا قررت عدم دمج التغييرات.
#please-open إعادة فتح طلب السحب المغلق أو مشكلة.

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

لقطة شاشة لمربع التعليق على طلب السحب مع كتابة #sign إيقاف التشغيل في حقل التعليق وتمييز زر التعليق.

قيد النشر

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

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

بمجرد نشر تغييراتك، فإنها تنتقل مباشرة إلى Microsoft Learn ليبدأ الآخرون في التعلم منها!

السيناريو: نشر التغييرات على Azure App Service

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