The Chromium Chronicle #22: أدوات Know Thy (المستودع)

الحلقة 22: من تأليف "إدوارد ليسمز" في سان فرانسيسكو، كاليفورنيا (حزيران/يونيو 2021)
الحلقات السابقة

Debot Tools هي مجموعة من الأدوات التي تم إنشاؤها بناءً على Git لتبسيط سير عمل المطورين المساهمين في قاعدة رموز Chromium والمشاريع ذات الصلة. وهو يتضمّن أدوات من أجل الحصول على الرمز البرمجي وتحميل التغييرات للمراجعة وإبقاء معلومات الدفع محدّثة وغير ذلك.

الحصول على الرمز‏

يمكنك تشغيل fetch chromium في دليل فارغ. يمكنك أيضًا استخدام الأمر fetch للحصول على الرمز الخاص بالمستودعات الأخرى مثل v8 أو webrtc. يُرجى مراجعة fetch help للاطّلاع على القائمة الكاملة.

تحميل التغيير للمراجعة

يتجاوب كل CL مع فرع واحد في git، لذا ابدأ بتنفيذ git new-branch <branch_name> لإنشاء فرع جديد. أدخِل أي عدد تريده من التغييرات في هذا الفرع وشغِّل git cl upload عندما يكون جاهزًا للمراجعة.

سيتيح لك git cl issue معرفة التصنيف المرتبط بفرعك. استخدِم git cl issue <issue> لتغييرها.

إبقاء معلومات الدفع محدّثة

شغِّل git rebase-update بشكل دوري لمزامنة الفروع المحلية مع الفروع المحلية، وgclient sync لتعديل third_party المستودعات وتشغيل نقاط الربط قبل التجميع.

إدارة متغيّرات التصميم التراكمية (CL) متعدّدة

  • ستعرض git cl status متغيّرات التصميم التراكمية (CL) المرتبطة بالفروع المحلية وحالتها (غير مُرسَلة، lgtm، مغلق، إلخ).
  • يعمل git freeze وgit thaw مثل git stash، لكن يمكنك تتبع الفرع المرتبط بالتغييرات المخزنة.
  • سيعرض لك git map سجلّ جميع فروعك، وسيوضِّح لك git map-branches العلاقات الرئيسية بين جميع فروعك.
  • تنشئ git new-branch --upstream_current <branch_name> فرعًا جديدًا أعلى فرع موجود. استخدِم git rebase-update لإعادة إنشاء فرع تابع بعد إجراء تغييرات على الفرع الأساسي.

مواصلة العمل على سجل CL حالي على جهاز مختلف

شغِّل git cl patch <issue_url> لاختيار قيمة CL حالية أعلى الفرع الحالي. لاحظ أنه سيربط الفرع الحالي بقيمة CL المصححة. استخدِم git cl patch <issue_url> --reapply لتجاهل التغييرات المحلية وإعادة تطبيق المشكلة.

والمزيد

يمكنك الاطّلاع على البرنامج التعليمي الخاص بأدوات المستودع واستكشاف رسائل المساعدة لكل أمر من أجل التعرّف على جميع الميزات الرائعة وإعلامنا في حال واجهت أي مشاكل.