Работа с кодом 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
Android Code Search позволяет выполнять поиск в AOSP, ничего не загружая. Вы можете использовать поиск кода для просмотра исходного кода AOSP, переключения между ветвями с открытым исходным кодом и навигации по перекрестным ссылкам. Для получения дополнительной информации см. документацию по поиску кода на сайте разработчиков Google.
Другие инструменты
Android Studio — это официальная интегрированная среда разработки (IDE) для разработки приложений для Android.
Android Debug Bridge (ADB) позволяет напрямую подключить рабочую станцию разработки к устройству Android, чтобы вы могли устанавливать пакеты и оценивать свои изменения.
Для Android 10 и выше используйте IntelliJ с AIDEgen IDE для разработки платформы Android.
Установка репо
Выполните следующие действия, чтобы установить Repo.
- Запустите эти команды, чтобы использовать официальный пакет из вашего дистрибутива Linux:
sudo apt-get update
sudo apt-get install 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
- Запустите эту команду:
- Ожидайте отчет, подобный этому:
- Номер
repo launcher version
сообщающий о 2.15 или выше, указывает на правильный номер версии и правильную установку. -
(from /usr/bin/repo)
указывает на установку из пакета. -
(from /home/<>/bin/repo)
указывает на ручную установку.
Эти команды создают временный файл, загружают в него репозиторий и проверяют, соответствует ли предоставленный ключ требуемому ключу. Если они успешны, установка продолжается.
После установки убедитесь, что repo version
сообщает что-то похожее на следующее, когда она работает в обычном каталоге. (Обычный каталог не является частью клиента репо, например, это ваш домашний каталог.)
repo version
<repo not installed>
repo launcher version 2.15
(from /usr/bin/repo)
Завершение установки
Далее: Чтобы завершить полную установку Repo Tool, см. раздел Инициализация клиента Repo на странице Загрузка исходного кода .