Як я можу обмежити розмір джерела Android, який мені потрібно завантажити з "repo sync"?


16

Я планую виїхати в країну з поганим підключенням до Інтернету, де сподіваюся зробити певну розробку програмного забезпечення.

Я використовував repo syncдля синхронізації джерела Android (та джерела CyanogenMod на моєму сервері AWS). Але вони настільки великі (> 30 Гб), що я не отримаю їх до того, як покину країну.

Чи є спосіб, щоб я міг виключити код із дерева? Мені потрібен лише пристрій Nexus 7 (wifi) (grouper). Чи можу я виключити будь-які проекти? Якщо так, то як?

Я використовую Ubuntu 12.04 та repo.

(Я використовую планшети Android для навчання дітей у дуже бідних куточках світу. Я хочу заблокувати користувальницький інтерфейс, щоб діти могли використовувати лише навчальні додатки. У якості протидії крадіжки мені потрібно включити створення гарячої точки Wi-Fi і змусити планшети відключити себе, якщо вони не підключені до інших планшетів через Wi-Fi протягом 48 годин.)


2
Може, ви можете клонуватись --depth 0так, щоб отримати лише останню редакцію? Або розріджений замовлення: Підкаталог
— Каси

Погодьтеся з Nomad. Велика частина джерела - це історія версій. Частини конкретного пристрою не так вже й багато. Крім того, замість того, щоб клонувати всю операційну систему, ви могли просто отримати сховища git за ту частину, яка вас цікавить.
— Ніколаз

Величезне спасибі, це неоціненна порада для когось із жахливого інтернет-зв’язку! У файлі 'repo' є розділ: group.add_option('--depth', type='int', default=None, dest='depth', help='create a shallow clone with given depth; see git clone')Я змінив глибину за замовчуванням на 0 і відновив синхронізацію репо. Я доповім, якщо це робить те, що я хочу.
— Кріс

Не впевнений, працював це чи ні - повне джерело все-таки було 42 Гб, яке хтось каже, що це повне дерево. Ще не можу підтвердити, оскільки я перебуваю на півдорозі через ftp'ing це локальне.
— Кріс

2
Шановний ОП: Ваше питання хороший. Однак ви запитали це на неправильному веб-сайті. Якби ви поставили своє запитання в потрібному місці (на стеку Overflow), ви отримали б більше і кращих відповідей. Я повторно задав подібне запитання щодо Stack Overflow ; будь ласка, заходьте туди, якщо хочете побачити кращі відповіді.
— незабутнійідSupportsMonica

Відповіді:


36

Це може бути пізно. Але:

  • Ви можете перейти --depth=1до repo initотримання дрібного клону.
  • І ви можете використовувати repo sync -cдля оформлення замовлення лише поточну гілку.

5
Можливо, вже пізно допомогти первинному запитувачеві. Але ще не пізно допомогти іншим людям, які також хочуть зробити дрібний клон Android.
— незабутніidSupportsMonica

6
Чудова порада. Ще одна порада: я використовую repo sync -c -n -j 4 && repo sync -c -l -j 16для швидшого синхронізації
— Корнільцев Анатолій

0

Під час виклику синхронізації РЕПО, хоча вибрана конкретна гілка, завантажується код з усіх гілок. Щоб обмежити розмір завантаження, ви можете вручну завантажити код з веб-сайту github. Так, ви можете завантажити код із потрібної гілки.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.