Tools zur Quellcodeverwaltung

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Die Arbeit mit Android-Code erfordert die Verwendung von sowohl Git (einem Open-Source-Versionskontrollsystem) als auch Repo (einem von Google entwickelten Repository-Verwaltungstool, das auf Git aufsetzt). Auf der Seite Quellcodeverwaltungs-Workflow finden Sie eine Zusammenfassung regelmäßiger Aktionen, die Sie ausführen können, z. B. das Hochladen von Änderungen zur Überprüfung.

Git

Git verwaltet große Projekte, die auf mehrere Repositories verteilt sind. Android verwendet Git für lokale Vorgänge wie lokale Verzweigungen, Commits, Diffs und Bearbeitungen. Eine der Herausforderungen beim Aufbau des Android-Projekts bestand darin, herauszufinden, wie die externe Community am besten unterstützt werden kann – von der Hobby-Community bis hin zu den großen OEMs, die Verbrauchergeräte für den Massenmarkt bauen. Google wollte, dass Komponenten austauschbar sind und dass interessante Komponenten ein Eigenleben außerhalb von Android haben. Google entschied sich zunächst für ein verteiltes Revisionskontrollsystem und grenzte es dann auf Git ein.

Weitere Einzelheiten zu Git finden Sie in dieser Git-Dokumentation .

Repo

Repo vereinheitlicht bei Bedarf Git-Repositories, führt Uploads in das Gerrit-Revisionskontrollsystem durch und automatisiert Teile des Android-Entwicklungsworkflows.

Der Repo Launcher stellt ein Python-Skript bereit, das einen Checkout initialisiert und den zweiten Teil, das vollständige Repo-Tool, herunterlädt. Das vollständige Repo-Tool ist in einem Android-Quellcode-Checkout enthalten. Es befindet sich standardmäßig in $SRCDIR/.repo/repo/... und empfängt weitergeleitete Befehle vom heruntergeladenen Repo Launcher.

Repo ersetzt Git nicht, es erleichtert lediglich die Arbeit mit Git im Kontext von Android. Repo verwendet Manifestdateien, um Git-Projekte im Android-Superprojekt zusammenzufassen. Sie können den repo -Befehl, der ein ausführbares Python-Skript ist, an einer beliebigen Stelle in Ihrem Pfad platzieren. Bei der Arbeit mit den Android-Quelldateien können Sie Repo für netzwerkübergreifende Vorgänge verwenden, z. B. mit einem einzelnen Repo-Arbeitsverzeichnis.

In den meisten Situationen können Sie Git anstelle von Repo verwenden oder Repo- und Git-Befehle mischen, um komplexe Befehle zu bilden. Die Verwendung von Repo für grundlegende netzwerkübergreifende Operationen macht Ihre Arbeit jedoch viel einfacher. Weitere Details zu Repo finden Sie in der Repo Command Reference , Repo README , den Preupload-Hooks (Tests), die in Repo aktiviert werden können, und allgemeinen Dokumenten in AOSP .

Informationen zum Herunterladen und Installieren des Repo Launcher von git-repo-downloads finden Sie unter Installieren von Repo .

Gerhard

Gerrit ist ein webbasiertes Code-Review-System für Projekte, die Git verwenden. Gerrit fördert eine zentralere Nutzung von Git, indem er allen autorisierten Benutzern erlaubt, Änderungen einzureichen, die automatisch zusammengeführt werden, wenn sie die Codeüberprüfung bestehen. Darüber hinaus vereinfacht Gerrit die Überprüfung, indem es Änderungen nebeneinander im Browser anzeigt und Inline-Kommentare ermöglicht.

Die Android-Gerrit-Überprüfungsschnittstelle finden Sie unter android-review.googlesource.com und die Code-Navigationsschnittstelle unter android.googlesource.com .

Mit der Android -Codesuche können Sie AOSP durchsuchen, ohne etwas herunterzuladen. Sie können die Codesuche verwenden, um den AOSP-Quellcode anzuzeigen, zwischen Open-Source-Zweigen zu wechseln und durch Querverweise zu navigieren. Weitere Informationen finden Sie auf der Google Developers-Website für die Dokumentation zur Codesuche .

Andere Werkzeuge

Android Studio ist die offizielle integrierte Entwicklungsumgebung (IDE) für die Entwicklung von Android-Apps.

Mit Android Debug Bridge (ADB) können Sie Ihre Entwicklungs-Workstation direkt mit Ihrem Android-Gerät verbinden, damit Sie Pakete installieren und Ihre Änderungen auswerten können.

Verwenden Sie für Android 10 und höher die IntelliJ mit AIDEgen IDE für die Android-Plattformentwicklung.

Repos installieren

Befolgen Sie diese Schritte, um Repo zu installieren.

  1. Führen Sie diese Befehle aus, um das offizielle Paket Ihrer Linux-Distribution zu verwenden:
      sudo apt-get update
      sudo apt-get install repo
    
    Wenn diese Befehle für Ihr System nicht funktioniert haben – zum Beispiel sehen Sie, dass die Paketversion veraltet ist oder dass kein offizielles Paket von Ihnen verfügbar ist Linux-Distribution installieren Sie Repo manuell mit den folgenden Befehlen:
    export REPO=$(mktemp /tmp/repo.XXXXXXXXX)
    curl -o ${REPO} https://storage.googleapis.com/git-repo-downloads/repo
    gpg --recv-key 8BB9AD793E8E6153AF0F9A4416530D5E920F5C65
    curl -s https://storage.googleapis.com/git-repo-downloads/repo.asc | gpg --verify - ${REPO} && install -m 755 ${REPO} ~/bin/repo
    
  2. Diese Befehle richten eine temporäre Datei ein, laden das Repo darauf herunter und überprüfen, ob der bereitgestellte Schlüssel mit dem erforderlichen Schlüssel übereinstimmt. Wenn diese erfolgreich sind, wird die Installation fortgesetzt.

    Überprüfen Sie nach der Installation, ob die repo version etwas Ähnliches wie das Folgende meldet, wenn sie in einem regulären Verzeichnis ausgeführt wird. (Ein normales Verzeichnis ist nicht Teil eines Repo-Clients; es ist beispielsweise Ihr Home-Verzeichnis.)

  3. Führen Sie diesen Befehl aus:
  4. repo version
  5. Erwarten Sie einen ähnlichen Bericht wie diesen:
  6. <repo not installed>
    repo launcher version 2.15
    (from /usr/bin/repo)
    
    • Die repo launcher version , die als 2.15 oder höher gemeldet wird, weist auf eine korrekte Versionsnummer und eine ordnungsgemäße Installation hin.
    • (from /usr/bin/repo) zeigt die Installation aus einem Paket an.
    • (from /home/<>/bin/repo) weist auf eine manuelle Installation hin.

Abschluss der Installation

Weiter: Informationen zum Abschließen Ihrer vollständigen Repo-Tool-Installation finden Sie unter Initialisieren eines Repo-Clients auf der Seite Herunterladen der Quelle .