Для работы с кодом Android необходимо использовать как Git (систему контроля версий с открытым исходным кодом), так и Repo (инструмент управления репозиториями, разработанный Google и работающий поверх Git). В разделе «Рабочий процесс контроля версий» приведено краткое описание стандартных действий, которые вы можете предпринять, например, загрузку изменений для проверки.
Гит
Git используется для обработки крупных проектов, распределенных по нескольким репозиториям. Android использует Git для локальных операций, таких как локальное ветвление, коммиты, сравнение изменений и редактирование. Одной из сложностей при создании проекта Android было определение наилучшего способа поддержки внешнего сообщества — от сообщества энтузиастов до крупных OEM-производителей, выпускающих массовые потребительские устройства. Мы хотели, чтобы компоненты были заменяемыми и чтобы интересные компоненты жили своей собственной жизнью за пределами Android. Сначала мы выбрали распределенную систему контроля версий, а затем сузили выбор до Git.
Для получения более подробной информации о Git обратитесь к этой документации Git .
Репо
Repo объединяет репозитории Git при необходимости, выполняет загрузку файлов в систему контроля версий Gerrit и автоматизирует часть рабочего процесса разработки под Android.
Repo Launcher предоставляет скрипт на Python, который инициализирует процесс извлечения кода и загружает вторую часть — полный инструмент Repo. Полный инструмент Repo включен в извлеченный исходный код Android. По умолчанию он находится в $SRCDIR/.repo/repo/... и получает переадресованные команды от загруженного Repo Launcher.
Repo не заменяет Git, он лишь упрощает работу с Git в контексте Android. Repo использует файлы манифеста для объединения проектов Git в суперпроект Android. Вы можете разместить команду repo , которая представляет собой исполняемый скрипт Python, в любом месте вашего пути. При работе с исходными файлами Android вы можете использовать Repo для операций в разных сетях, например, с одной рабочей директорией Repo.
В большинстве случаев вместо Repo можно использовать Git или комбинировать команды Repo и Git для создания сложных команд. Однако использование Repo для базовых операций между сетями значительно упрощает работу. Более подробную информацию о Repo можно найти в справочнике команд Repo , файле README Repo , хуках предварительной загрузки (тесты, которые можно включить в Repo) и общей документации AOSP .
Чтобы загрузить и установить Repo Launcher из репозитория git-repo-downloads , см. раздел «Установка репозитория» .
Геррит
Gerrit — это веб-система для проверки кода в проектах, использующих Git. Gerrit способствует более централизованному использованию Git, позволяя всем авторизованным пользователям отправлять изменения, которые автоматически объединяются, если проходят проверку кода. Кроме того, Gerrit упрощает процесс проверки, отображая изменения рядом друг с другом в браузере и позволяя добавлять комментарии непосредственно в код.
Интерфейс проверки кода в Gerrit для Android можно найти по адресу android-review.googlesource.com , а интерфейс навигации по коду — по адресу android.googlesource.com .
Поиск кода Android
Android Code Search позволяет искать информацию в AOSP без необходимости загрузки каких-либо файлов. С помощью Code Search вы можете просматривать исходный код AOSP, переключаться между ветками открытого исходного кода и перемещаться по перекрестным ссылкам. Для получения дополнительной информации см. документацию по Code Search на сайте Google Developers.
Другие инструменты
Android Studio — это официальная интегрированная среда разработки (IDE) для создания приложений под Android.
Android Debug Bridge (adb) позволяет напрямую подключить вашу рабочую станцию разработки к устройству на базе Android, чтобы вы могли устанавливать пакеты и оценивать внесенные изменения.
Для разработки под AOSP используйте Android Studio for Platform (ASfP) .