la synchronization del repository se estancó al 99% debido a desconexiones frecuentes de internet

Intento volver a sincronizar la fuente de cianogenmod. Llegó hasta la etapa del 99%, pero parece que hay un file grande en esta etapa, y debido a desconexiones bastante frecuentes de mi connection a Internet, no logra downloadlo.

Cada vez que ocurre una desconnection, se imprime un fatal: early EOF , la repo sync del repo sync detiene y parece que en su siguiente ejecución, inicia este file desde el principio, aunque guarda un object temporal antes.

¿Hay alguna manera de decirle a repo sync que comience en su próxima ejecución desde el punto donde se detuvo en un file específico, en lugar de comenzar desde el principio?

Traté de ejecutar la synchronization de repos en un ciclo ininteligible durante la noche, pero la descarga no terminó, sino que mi memory se llenó.

Los files temporales están en la carpeta ~/android/system/.repo/project-objects/CyanogenMod/android_frameworks_base.git/objects/pack en el formatting:

  78M tmp_pack_7JhRgA 106M tmp_pack_fprjIZ 523M tmp_pack_tydAd5 436M tmp_pack_po9dEw 780M tmp_pack_rewDSS 

También traté de eliminar estos files temporales antes de cada nueva synchronization de reposiciones para evitar una memory completa, pero aún así no ayuda a finalizar la descarga. Por cierto, parece que eliminarlos no hace que la próxima ejecución comience desde un punto diferente, por lo que confirma la sospecha de que los ignora en la próxima ejecución.

El command exacto de repo repo que corro es repo sync -j4 -f -c

El command repo init fue: repo init -u https://github.com/CyanogenMod/android.git -b cm-13.0

El error impreso después de una desconnection de internet es:

 Fetching projects: 94% (497/528) Fetching project CyanogenMod/android_frameworks_opt_vcard Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s Fetching projects: 96% (507/528) Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s 616668), 4.93 MiB | 131.00 KiB/s Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s 616668), 5.12 MiB | 123.00 KiB/s Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s Fetching projects: 99% (523/528) Fetching project CyanogenMod/android_hardware_qcom_audio Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function. fatal: The remote end hung up unexpectedly fatal: early EOF fatal: index-pack failed 

Intenté el siguiente command justo ahora y la synchronization pasó a través. Tengo todos los proyectos

 repo init -u https://github.com/CyanogenMod/android.git -b cm-13.0` repo sync -j8 -q -c --no-tags` 

La opción -c/--current-branch para repo sync hace que repo busque solo la twig que realmente necesita en lugar de todas las twigs de cada git.

El --no-tags evita la synchronization de todas las tags

El uso de -c y –no-tags hace que descargues less, por lo que la synchronization va más rápido.

Si quieres hacerlo aún más rápido, puedes probar --depth=<n> , pero eso cortará el historial de git.

Después de un repository de desconnection de Internet efectivamente retoma donde lo dejó. Sí funciona nuevamente a través de la list de proyectos desde el principio, puede search algunos datos nuevos para proyectos que ya se procesaron.

Pero se mueve bastante rápido a través de proyectos previamente sincronizados, porque todos los datos que había obtenido previamente están en el directory .repo .

Espero asegurarme de que no estés haciendo repo init cada vez después de la desconnection.

Al final, parece que el problema se mejoró al usar VMWare, que se utilizó para ejecutar la máquina Ubuntu. De alguna manera, VMWare provocó que la interfaz de Internet se desconectara con frecuencia, y cuando traté de usar VirtualBox, aunque de vez en cuando fatal: early EOF un fatal: early EOF , la interfaz de Internet era lo suficientemente estable como para completar la synchronization.