Что на самом деле делает repo init и repo sync?
Я разместил этот вопрос на энтузиастах Android, но решил, что это неправильное место, чтобы спросить, поэтому я удалил его оттуда и спросил его "снова" здесь.
Это такой вопрос noob, и простите меня, если это так, но я просто хочу четко понять основные понятия. Чтение справки РЕПО и справочной страницы команды РЕПО Google на самом деле не очень просветляет. Я понял некоторые биты из справочной страницы Google, но мне все еще нужно больше очищения.
следуя инструкциям о том, как загрузить источник android, я выполнил эти две команды на оболочке Ubuntu: (я позаботился обо всех предварительных условиях для среды.)
~/android4.2.2$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.2.2_r1.2
~/android4.2.2$ repo sync -j4
после ожидания полдня для завершения загрузки РЕПО, я закончил с 19G загруженного материала в android4.2.2 директория. Так что именно только что произошло, и почему он достиг 19G, когда Google сказал, что я должен ожидать только около 8G источника файлы?
1 ответов
repo
- Это скрипт-оболочка python для git
, его источник Google страница определяет его как
repo-множественный инструмент репозитория Git
repo init
команда инициализирует РЕПО в текущем каталоге. То есть, он загружает последний источник РЕПО иmanifest.xml
файл, описывающий структуру каталогов репозиториев git, и сохраните все это в.repo
подкаталог в текущем каталоге. В ваш случай, вы использовали необязательный-b
аргумент, который используется для выбора ветви для проверки. По умолчанию (т. е. когда-b
аргумент не используется), Используется главная ветвь.repo sync
обновляет рабочее дерево до последней версии. То есть он синхронизирует локальные каталоги проектов с удаленными репозиториями, указанными в файле манифеста. Если локальный проект еще не существует, он будет клонировать новый локальный каталог из удаленного репозитория и настроить отслеживание ветвей, указанных в манифесте. Если локальный проект уже существует, он обновит удаленные ветви и перебазирует все новые локальные изменения поверх новых удаленных изменений.-j
аргумент используется для задания количества параллельных заданий для выполнения. Значение по умолчанию может быть определено в манифесте, а также может быть переопределено в командной строке, как в вашем случае.
почему он достиг 19G, когда Google сказал, что я должен ожидать только около 8G источника файлы?
это должно быть потому, что кроме исходных файлов, вы получите всю историю Android с начала время :)
надеюсь, что это помогает.