Поскольку вы используете один и тот же URL-адрес для всех ветвей, вы можете загрузить их в одну папку, но они по-прежнему хранятся отдельно.
Вы можете загрузить несколько веток файлов проекта в одну папку .repo в одном рабочем каталоге. Это экономит дисковое пространство и исключает препятствия , как путь repo --reference чувствительны репо, неспособность использовать несколько ссылок.
Чтобы загрузить все ветви в одну папку .repo , выполните
repo init -u https://github.com/CyanogenMod/android.git -b cm-10.1
repo sync
repo init -b cm-10.2
repo sync
repo init -b cm-11.0
repo sync
и список идет ..
Это загрузит все ветви в одну папку .repo в одном рабочем каталоге. При инициализации второй ветви мы не предоставляем опцию -u url потому что мы повторно используем другую ветку из локального репо.
После repo sync рабочая директория содержит последнюю инициализированную ветку, и это абсолютно безопасно. Нас интересует только рабочий каталог, а не содержимое папки .repo . Ветви все еще остаются отдельными.
Вы можете иногда использовать repo forall -c git gc чтобы упаковать все потерянные объекты в файлы пакета.