כלי בקרת מקור

עבודה עם קוד אנדרואיד מצריכה שימוש הן ב-Git (מערכת בקרת גרסאות בקוד פתוח) והן ב-Repo (כלי ניהול מאגר שנבנה בגוגל הפועל על גבי Git). עיין בדף זרימת העבודה של בקרת מקור לסיכום של פעולות רגילות שאתה יכול לבצע, כגון העלאת שינויים לבדיקה.

Git

Git מטפלת בפרויקטים גדולים המופצים על פני מספר מאגרים. אנדרואיד משתמשת ב-Git עבור פעולות מקומיות כגון הסתעפות מקומית, התחייבויות, הבדלים ועריכות. אחד האתגרים בהקמת פרויקט אנדרואיד היה לקבוע כיצד לתמוך בצורה הטובה ביותר בקהילה החיצונית - מקהילת התחביבים ועד ליצרני ה-OEM הגדולים שבונים מכשירי צרכנים בשוק המוני. גוגל רצתה שרכיבים ניתנים להחלפה, ורצתה שלרכיבים מעניינים יהיו חיים משלהם, מחוץ לאנדרואיד. גוגל בחרה תחילה מערכת בקרת גרסאות מבוזרת, ואז צמצמה אותה ל-Git.

לפרטים נוספים על Git, עיין בתיעוד Git זה.

ריפו

Repo מאחד את מאגרי Git בעת הצורך, מבצע העלאות למערכת בקרת גרסאות Gerrit וממכן חלקים מזרימת העבודה של פיתוח אנדרואיד.

ה-Repo Launcher מספק סקריפט Python המאתחל קופה ומוריד את החלק השני, כלי ה-Repo המלא. כלי ה-Repo המלא כלול בתשלום קוד מקור אנדרואיד. הוא ממוקם, כברירת מחדל, ב- $SRCDIR/.repo/repo/... והוא מקבל פקודות מועברות מ-Repo Launcher שהורד.

Repo לא מחליף את Git, הוא רק מקל על העבודה עם Git בהקשר של אנדרואיד. Repo משתמש בקבצי מניפסט כדי לצבור פרויקטים של Git לתוך פרויקט העל של אנדרואיד. אתה יכול לשים את פקודת repo , שהיא סקריפט Python בר הפעלה, בכל מקום בנתיב שלך. בעבודה עם קובצי המקור של אנדרואיד, אתה יכול להשתמש ב-Repo עבור פעולות חוצות רשת, כגון עם ספריית עבודה אחת של Repo.

ברוב המצבים, אתה יכול להשתמש ב-Git במקום ב-Repo, או לערבב פקודות Repo ו-Git כדי ליצור פקודות מורכבות. עם זאת, השימוש ב-Repo עבור פעולות בסיסיות בין רשתות הופך את העבודה שלך להרבה יותר פשוטה. לפרטים נוספים על Repo, עיין ב- Repo Command Reference , Repo README , ה- Preupload Hooks (בדיקות) שניתן להפעיל ב-Repo, ומסמכים כלליים ב-AOSP .

כדי להוריד ולהתקין את Repo Launcher מהורדות git-repo- , ראה התקנת Repo .

חריט

Gerrit היא מערכת סקירת קוד מבוססת אינטרנט עבור פרויקטים המשתמשים ב-Git. חריט מעודד שימוש מרוכז יותר ב-Git על ידי מתן אפשרות לכל המשתמשים המורשים לשלוח שינויים, שמתמזגים אוטומטית אם הם עוברים סקירת קוד. בנוסף, Gerrit הופך את הסקירה לקלה, מציגה שינויים זה לצד זה בדפדפן ומאפשרת הערות מוטבעות.

מצא את ממשק סקירת Android Gerrit ב- android-review.googlesource.com ואת ממשק ניווט הקוד ב- android.googlesource.com .

חיפוש קוד אנדרואיד מאפשר לך לחפש ב-AOSP מבלי להוריד דבר. אתה יכול להשתמש ב-Code Search כדי להציג את קוד המקור של AOSP, לעבור בין ענפי קוד פתוח ולנווט בהפניות צולבות. למידע נוסף, עיין באתר Google Developers עבור תיעוד חיפוש הקוד .

כלים אחרים

Android Studio היא סביבת הפיתוח המשולבת הרשמית (IDE) לפיתוח אפליקציות אנדרואיד.

Android Debug Bridge (ADB) מאפשר לך לחבר את תחנת העבודה לפיתוח ישירות למכשיר האנדרואיד שלך כדי שתוכל להתקין חבילות ולהעריך את השינויים שלך.

לפיתוח AOSP, השתמש ב- Android Studio for Platform (ASfP) .

התקנת Repo

בצע את השלבים הבאים כדי להתקין את Repo.

  1. הפעל את הפקודות האלה כדי להשתמש בחבילה הרשמית מהפצת הלינוקס שלך:
      sudo apt-get update
      sudo apt-get install repo
    
    אם הפקודות הללו לא עבדו עבור המערכת שלך - לדוגמה, אתה רואה שגרסת החבילה מיושנת, או שאין חבילה רשמית זמינה מהמכשיר שלך הפצת לינוקס, התקן ידנית את Repo באמצעות הפקודות הבאות:
    export REPO=$(mktemp /tmp/repo.XXXXXXXXX)
    curl -o ${REPO} https://storage.googleapis.com/git-repo-downloads/repo
    gpg --recv-keys 8BB9AD793E8E6153AF0F9A4416530D5E920F5C65
    curl -s https://storage.googleapis.com/git-repo-downloads/repo.asc | gpg --verify - ${REPO} && install -m 755 ${REPO} ~/bin/repo
    
  2. פקודות אלו מגדירות קובץ זמני, מורידים לו ריפו ומוודאים שהמפתח שסופק תואם למפתח הנדרש. אם אלה מצליחים, ההתקנה ממשיכה.

    לאחר ההתקנה, ודא שגרסת repo version מדווחת על משהו דומה להלן כאשר היא פועלת בספרייה רגילה. (ספרייה רגילה אינה חלק מלקוח ריפו; לדוגמה, זו ספריית הבית שלך.)

  3. הפעל את הפקודה הזו:
  4. repo version
  5. צפו לדוח דומה לזה:
  6. <repo not installed>
    repo launcher version 2.15
    (from /usr/bin/repo)
    
    • מספר repo launcher version המדווח כ-2.15 ומעלה מציין מספר גרסה נכון והתקנה נכונה.
    • (from /usr/bin/repo) מציין התקנה מחבילה.
    • (from /home/<>/bin/repo) מציין התקנה ידנית.

השלמת ההתקנה

הבא: כדי להשלים את ההתקנה המלאה של כלי Repo, ראה אתחול לקוח Repo בדף הורדת המקור .