اكتشف

مراجعات طلبات pull request

يُفحص كل pull request في مستودع مربوط مقابل الإنتاج الذي يُنشر إليه، وتعرف النتيجة قبل أن تدمج.

تبدأ معظم الحوادث بتغيير. يراجع Polylane كل pull request في مستودع مربوط مقابل موارد الإنتاج التي يُنشر إليها، وينشر تعليقاً واحداً يقول نجاح أو فشل.

ما الذي يفعله

يقرأ وكيل الـ diff والمقاييس والسجلات الحية والمشكلات المفتوحة للموارد التي يُنشر المستودع إليها، ثم يقرر ما إذا كان التغيير قد يضر الإنتاج. تحصل على تعليق واحد على طلب pull request، وcheck اختياري باسم Polylane production impact، ومحادثة في وحدة التحكم بالتحليل الكامل.

كيف يعمل

  1. يبدأ فتح pull request على الفرع الافتراضي، أو الدفع إليه، أو تعليمه جاهزاً للمراجعة، مراجعة لـ commit رأسه. لا تُراجَع المسودات.
  2. يحلّ الدفع اللاحق محل المراجعة الجارية، فلا يُحكم إلا على آخر commit.
  3. تنجح التغييرات التي لا تمسّ إلا ملفات التوثيق أو الاختبارات أو CI من دون تحقيق.
  4. يتبع Polylane حواف النشر الخاصة بالمستودع إلى موارد إنتاجه، أو يراجع مقابل حسابات السحابة في مساحة العمل كلها حين لا يملك أياً منها.
  5. يحقق الوكيل في محادثة ويسجّل حكماً pass أو fail.
  6. يُحرَّر تعليق واحد لكل pull request في كل مراجعة. يُقرأ الفشل Hold this merge مع مستوى التأثير والنتيجة؛ ويُقرأ النجاح Production impact unlikely، أو يقول ما إذا كان يُتوقع أن يحلّ إصلاحٌ لمشكلة مكتشفة تلك المشكلة. وحين يعالج دفع لاحق أحد المخاوف، يعود التعليق إلى النجاح ويقول ذلك.

يستطيع الوكيل أيضاً اقتراح تحسينات في قابلية الملاحظة، على شكل مراجعة مجمّعة واحدة من تعليقات الاقتراح أو pull request مكدّس. لا تؤثر هذه أبداً في الحكم.

التصرف بناءً على مراجعة

اذكر @polylane في تعليق على طلب pull request فيجيب Polylane في الحوار نفسه؛ ويتلقى غير الأعضاء ملاحظة عن الوصول بدلاً من ذلك.

تطلبما يحدث
سؤالاًيجيب الوكيل من محادثة المراجعة، والأدلة أمامه.
نظرة أخرىيراجع الوكيل آخر دفع مرة أخرى ويعيد النظر في الحكم.
إصلاحاًيبدأ Polylane جولة إصلاح ويفتح pull request مكدّساً على فرع طلب pull request، مربوطاً من التعليق.

يسرد تبويب Changes الخاص بالمستودع في وحدة التحكم كل مراجعة. يقدّم الفشل Fix with Polylane، الذي يبدأ جولة الإصلاح نفسها، وDismiss حين لا ينطبق القلق: يستمر مراجعة طلب pull request لكنه لا يحصل على تعليقات أخرى حتى تستعيده بـ Restore.

الحالةالوصف
In reviewيراجع Polylane آخر دفع.
Flaggedوجدت المراجعة قلقاً على الإنتاج.
Passedلم تُوجد مخاوف على الإنتاج.
Resolvedعالج دفع لاحق المخاوف.
Dismissedرفض عضو المراجعة؛ ولا يحصل طلب pull request على تعليقات أخرى.

الإعداد

المراجعات مفعّلة لكل مستودع مربوط. يوقفها Settings > Pull request reviews على مستوى مساحة العمل كلها ويحدد ما إذا كانت محادثات المراجعة تُشارك مع من يشاهدون طلب pull request. وتحت Settings > Repositories، يضيف تبويب Settings الخاص بالمستودع ثلاثة حقول.

الحقلالوصف
Review pull requests for production impactيوقف المراجعات لهذا المستودع وحده.
Pull request review instructionsنص حر يقرؤه الوكيل في كل مراجعة: المسارات الحرجة للنشر، أو المخاوف التي تتولاها بوابات أخرى أصلاً.
Block merging on production concernsينشر الـ check Polylane production impact على كل pull request مراجَع؛ ويفشل عند وجود قلق. مفعّل افتراضياً. اشترطه في حماية الفروع لمنع الدمج.

يكتمل الـ check أيضاً على commits قائمة الدمج، لأن طلب pull request رُوجع قبل أن يدخل القائمة. ويمكن لحكم الفشل إرسال بريد Production Concern Found، الموقوف افتراضياً تحت الإشعارات.

ملاحظات الخطط

تتضمن كل خطة عدداً شهرياً من مراجعات طلبات pull request؛ وحصة خطة Free مذكورة في الفوترة والاستخدام، ويُراسَل الأعضاء بالبريد حين تقارب النفاد. وبعد تجاوز الحصة، تسجّل وحدة التحكم طلب pull request بـ Production impact not verified ولا يُنشر شيء على GitHub.

ذات صلة