פרק 22: מאת אדוארד לסמס בסן פרנסיסקו, קליפורניה (יוני 2021)
פרקים קודמים
Depot Tools הוא אוסף של כלים שמבוססים על Git כדי לפשט את תהליך העבודה של מפתחים שתורמים ל-codebase של Chromium ולפרויקטים קשורים. הוא כולל כלים להורדת הקוד, להעלאת שינויים לבדיקה, לעדכון דף התשלום ועוד!
קבל את הקוד
מריצים את הפקודה fetch chromium בספרייה ריקה. אפשר להשתמש בפקודה fetch גם כדי לקבל קוד למאגרים אחרים, כמו v8 או webrtc. הרשימה המלאה מפורטת ב-fetch help.
העלאת שינוי לבדיקה
כל CL תואם להסתעפות אחת ב-Git, לכן כדאי להתחיל בהרצת git new-branch <branch_name> כדי ליצור הסתעפות חדשה. כדאי לבצע כמה שינויים שרוצים בהסתעפות הזו, ולהריץ את git cl upload כשהיא תהיה מוכנה לבדיקה.
git cl issue יציין לאיזה CL הסניף שלך משויך.
אפשר לשנות אותו באמצעות git cl issue <issue>.
מוודאים שתהליך התשלום מעודכן
מדי פעם מריצים את git rebase-update כדי לסנכרן הסתעפות מקומית עם ה-upstream ואת gclient sync כדי לעדכן את המאגרים third_party ולהריץ קטעי הוק (hooks) מראש.
ניהול של כמה רשימות CL
- ב-
git cl statusיוצגו CLs המשויכים לסניפים מקומיים והסטטוס שלהם (שלא נשלחו, lgtm, סגור וכו'). git freezeו-git thawפועלים כמוgit stash, אבל עוקבים אחרי ההסתעפות שמשויכת לשינויים ששמורים במאגר.git mapיציג את ההיסטוריה של כל הסניפים, ו-git map-branchesיציג את היחסים ברמת ה-upstream בין כל הסניפים.git new-branch --upstream_current <branch_name>יוצר הסתעפות חדשה על גבי הסתעפות קיימת. שימוש ב-git rebase-updateכדי לבצע rebase להסתעפות תלויה אחרי שמבצעים שינויים בהסתעפות הבסיסית.
המשך העבודה על CL במכשיר אחר
מריצים את הפקודה git cl patch <issue_url> כדי לבחור CL (CL) קיים מעל ההסתעפות הנוכחית. שימו לב שהוא ישייך את ההסתעפות הנוכחית ל-CL המתוקן. באמצעות git cl patch <issue_url> --reapply אפשר לבטל את השינויים המקומיים ולהגיש בקשה חוזרת לבעיה.
ועוד
עיינו במדריך בנושא כלים למחסן ועיינו בהודעות העזרה של כל פקודה כדי לגלות את כל התכונות המגניבות, ועדכנו אותנו אם תיתקלו בבעיות.