Я столкнулся с множеством коротких вопросов по минимальным аспектам использования repo, чтобы получить исходный код Android или очень широкие определения того, что делает repo, и в результате не совсем понимает, что происходит, когда я использую repo. Я следую инструкциям на сайте Android Source. Я делаю это все время в моем repodir, поэтому все упоминания о файлах относятся к этому.
Init и sync repo:
repo init -u https://android.googlesource.com/platform/manifest
repo sync
После этого моя папка заполнена папками типа Android (bionic, bootable и т.д. и т.д.) и скрытой папкой .repo. Примечательно, что есть папка с именем ics-mr1, которая относится к определенной версии и содержит в основном те же папки в моем repodir внутри себя.
Вытащите конкретную ветвь:
repo init -u https://android.googlesource.com/platform/manifest -b gingerbread
repo sync
Это завершается относительно быстро, и основное изменение, которое я вижу, - это теперь папка с именем gingerbread (все исходные папки, похоже, остаются).
Теперь я попробую это, и он принимает AGES:
repo init -u https://android.googlesource.com/platform/manifest -b android_4.2.2_r1
repo sync
После этого он все еще содержит те же gingerbread и ics-mr1 и несколько новых случайных папок (например, abi), но ничего похожего на эту новую версию.
Вопрос
Из результатов этого я вижу, что я действительно не понимаю, что именно делают мои действия и как достичь того, что я пытаюсь сделать.
Как получить локальную версию всей ветки master источника, а затем правильно изменить между ветвями, как я считаю нужным? То, как я нахожусь в данный момент, кажется неправильным, поскольку файлы, оставшиеся после изменений в ветке, кажутся нелогичными.
Кроме того, существует ли эффективный способ иметь локальные копии многочисленных ветвей одновременно, чтобы я мог сравнивать компоненты каждого (очевидно, без повторной загрузки их каждый раз)?
Я задаю эти вопросы с большими недостатками в понимании (которые я не смог найти четкой согласованной информации), поэтому любая дополнительная информация о ответе, чтобы помочь в понимании того, что на самом деле делается, действительно будет ценной.