Приостановка и возобновление синхронизации Android Repo

Я пытаюсь синхронизировать следующее репо

инициализация репозитория -u git://github.com/SlimRoms/platform_manifest.git -b jb

Проблема в том, что я начал синхронизацию репо около 30 часов назад, и она все еще не завершена. (у меня соединение 1 Мбит/с). Я не хочу так долго оставлять ноутбук включенным и хотел бы приостановить текущую синхронизацию и возобновить ее позже.

Итак, я немного поискал и обнаружил, что для приостановки текущей загрузки/синхронизации я могу использовать:

  • Ctrl+С
  • Ctrl+Z
  • просто закройте терминал (он автоматически возобновит загрузку в следующий раз)

Итак, я попытался использовать Ctrl + C, загрузка остановилась. А затем, чтобы возобновить, я попробовал «fg», но он снова не запускается. Ошибка, которую я получаю:

bash: fg: current: нет такой работы

Может ли кто-нибудь помочь мне здесь? Могу ли я просто закрыть и продолжить синхронизацию позже, используя:?

синхронизация репо


person Chinmay Jade    schedule 23.09.2012    source источник
comment
хорошо, я попытался снова синхронизировать, используя синхронизацию репо, а затем приостановил операцию, используя Ctrl + Z. Теперь я могу возобновить использование fg. Но все же остается вопрос: Начинается ли синхронизация с того места, где она была остановлена??   -  person Chinmay Jade    schedule 24.09.2012
comment
Можете дать ссылку, где описан процесс приостановки процесса синхронизации?   -  person Yury    schedule 24.09.2012
comment
Из этой ссылки я вижу, что вы не можете приостановить синхронизацию. Вы можете просто попробовать синхронизировать проекты внутри AOSP один за другим.   -  person Yury    schedule 24.09.2012
comment
хорошо .. из моего опыта за последние 4 дня я пришел к выводу, что синхронизацию репо невозможно приостановить. Моя синхронизация несколько раз зависала на разных уровнях прогресса... и больше не восстанавливалась. мне пришлось вручную перезапустить синхронизацию. Но это отодвигает прогресс до 33%, и я должен каждый раз начинать с этого числа!! (Что очень, очень раздражает!) Ургх... НО РАЗМЕР ЗАГРУЖАЕМОЙ ПАПКИ ПРОДОЛЖАЕТ УВЕЛИЧИВАТЬСЯ... Интересно, почему?   -  person Chinmay Jade    schedule 25.09.2012
comment
Может быть, 33% — это когда загружается большой проект git (или несколько). После этого еще один большой проект не загружается и синхронизация репо начинается с этих 33%   -  person Yury    schedule 26.09.2012


Ответы (2)


На самом деле вы не можете приостановить repo sync, но если вы прервете его с помощью Ctrl-C, а затем снова запустите позже, он эффективно продолжится с того места, где остановился. Хотя он снова начнет работать со списком проектов с самого начала и все еще может получить некоторые новые данные для проектов, которые уже были обработаны, он должен пробежаться по этим проектам, потому что все данные, которые он ранее извлек, все еще будут там. в скрытом каталоге .repo.

См. этот ответ для отличного описания того, как работают repo init и repo sync.

Обратите внимание, что вы не увидите сразу ни один из загруженных проектов, потому что repo sync не создает и не заполняет ваши рабочие каталоги до тех пор, пока не завершит клонирование всех репозиториев git в .repo/projects.

person Paul    schedule 26.09.2012

Если вы хотите синхронизировать репо без зависания, вы можете использовать:

nohup repo sync &

и выйдите из сеанса ssh/telnet/terminal.

Для решения проблемы увеличения дискового пространства просто периодически делайте следующее:

cd /path/to/repo
rm -f `find . -name '*tmp_pack*'`
person carltao    schedule 26.09.2018