Инструменты управления исходным кодом

Работа с кодом Android требует использования как Git (система контроля версий с открытым исходным кодом), так и Repo (разработанный Google инструмент управления репозиторием, работающий поверх Git). См. страницу « Рабочий процесс системы управления версиями » для получения сводки о регулярных действиях, которые вы можете выполнять, таких как загрузка изменений для проверки.

Гит

Git обрабатывает большие проекты, распределенные по нескольким репозиториям. Android использует Git для локальных операций, таких как локальное ветвление, фиксация, сравнение и редактирование. Одной из проблем при создании проекта Android было определить, как лучше всего поддерживать внешнее сообщество — от сообщества любителей до крупных OEM-производителей, создающих потребительские устройства для массового рынка. Google хотел, чтобы компоненты были заменяемыми, и хотел, чтобы интересные компоненты жили своей собственной жизнью вне Android. Сначала Google выбрала распределенную систему контроля версий, а затем сузила ее до Git.

Дополнительные сведения о Git см. в этой документации по Git .

Репо

Repo при необходимости объединяет репозитории Git, выполняет загрузку в систему контроля версий Gerrit и автоматизирует части рабочего процесса разработки Android.

Repo Launcher предоставляет скрипт Python, который инициализирует проверку и загружает вторую часть, полный инструмент Repo. Полный инструмент Repo включен в проверку исходного кода Android. По умолчанию он расположен в $SRCDIR/.repo/repo/... и получает перенаправленные команды из загруженного Repo Launcher.

Репозиторий не заменяет Git, он только упрощает работу с Git в контексте Android. Repo использует файлы манифеста для объединения проектов Git в суперпроект Android. Вы можете поместить команду repo , которая представляет собой исполняемый скрипт Python, в любом месте вашего пути. При работе с исходными файлами Android вы можете использовать Repo для операций в сети, например с одним рабочим каталогом Repo.

В большинстве случаев вы можете использовать Git вместо Repo или смешивать команды Repo и Git для формирования сложных команд. Однако использование Repo для базовых сетевых операций значительно упрощает вашу работу. Для получения дополнительной информации о Repo см. Справочник по командам Repo, README Repo , хуки предварительной загрузки (тесты), которые можно включить в Repo, и общие документы в AOSP .

Чтобы загрузить и установить Repo Launcher из git-repo-downloads , см. Установка Repo .

Геррит

Gerrit — это веб-система проверки кода для проектов, использующих Git. Геррит поощряет более централизованное использование Git, позволяя всем авторизованным пользователям отправлять изменения, которые автоматически объединяются, если они проходят проверку кода. Кроме того, Gerrit упрощает рецензирование, отображая изменения в браузере рядом друг с другом и предоставляя встроенные комментарии.

Найдите интерфейс обзора Android Gerrit на странице android-review.googlesource.com и интерфейс навигации по коду на странице android.googlesource.com .

Android Code Search позволяет выполнять поиск в AOSP, ничего не загружая. Вы можете использовать поиск кода для просмотра исходного кода AOSP, переключения между ветвями с открытым исходным кодом и навигации по перекрестным ссылкам. Для получения дополнительной информации см. документацию по поиску кода на сайте разработчиков Google.

Другие инструменты

Android Studio — это официальная интегрированная среда разработки (IDE) для разработки приложений для Android.

Android Debug Bridge (ADB) позволяет напрямую подключить рабочую станцию ​​разработки к устройству Android, чтобы вы могли устанавливать пакеты и оценивать свои изменения.

Для Android 10 и выше используйте IntelliJ с AIDEgen IDE для разработки платформы Android.

Установка репо

Выполните следующие действия, чтобы установить Repo.

  1. Запустите эти команды, чтобы использовать официальный пакет из вашего дистрибутива Linux:
      sudo apt-get update
      sudo apt-get install repo
    
    Если эти команды не работают в вашей системе — например, вы видите, что версия пакета устарела или в вашем дистрибутиве нет официального пакета. В дистрибутиве Linux вручную установите Repo с помощью следующих команд:
    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. Эти команды создают временный файл, загружают в него репозиторий и проверяют, соответствует ли предоставленный ключ требуемому ключу. Если они успешны, установка продолжается.

    После установки убедитесь, что 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 Tool, см. раздел Инициализация клиента Repo на странице Загрузка исходного кода .