Репо синхронизирует разные ветки

Мне приходится работать с разными версиями Android, такими как Ice Cream Sandwitch, KitKat, CyanogenMods и так далее. Должен ли я каждый раз создавать разные папки и для каждой ветки/тега синхронизировать и ждать 4 часа на ветку? Есть ли способ оптимизировать? Есть ли способ переключать ветки аналогично git checkout? Или мне всегда нужно создавать новую папку и вызывать «repo init»?


person shadox    schedule 04.02.2014    source источник


Ответы (1)


Если вы часто переключаетесь между разными ветвями, может быть проще иметь отдельные рабочие пространства. В противном случае просто переключайтесь между ветвями манифеста в одной и той же рабочей области:

repo init -b some-other-branch
repo sync

Обратите внимание, что это приведет к перемещению всех текущих веток тем на их новые базы.

Если вы знаете, что все необходимые git обновлены и вам не нужно выходить в сеть, не стесняйтесь вместо этого запускать repo sync -l. Имейте в виду, что есть крайние случаи, когда это приведет к непоследовательному рабочему пространству, поэтому будьте осторожны. Полная синхронизация будет довольно быстрой, если ваше рабочее пространство с самого начала было достаточно обновлено.

Чтобы ускорить создание первоначального рабочего пространства, вы можете просто скопировать существующее рабочее пространство в новый каталог. Другой вариант — создать локальное зеркало, из которого можно синхронизировать любое количество рабочих пространств, даже не подключаясь к сети; см. http://source.android.com/source/downloading.html#using-a-local-mirror.

person Magnus Bäck    schedule 04.02.2014