La mejor manera de cambiar las versiones del repositorio de Android de manera eficiente una vez descargado usando repo / git

Tengo una situación en la que necesito crear un conjunto de copias estáticas del código fuente de Android de diferentes versiones de lanzamiento.

Simplemente haciendo unrepo init -b $version; repo sync tomará una eternidad init requiere interacción, y las sincronizaciones desperdiciarán mi ancho de banda en todas las versiones).

Mi configuración actual es descargar una versión base (digamos 1.6_r1), copiarla en una nueva carpeta (android-1.6_r2) y luego volver a ejecutarinit y sincronizar repo init -b android-1.6_r2; repo sync). Sin embargo, la sincronización falla a veces, con errores como:

ndk / build / plataformas / android-3 / arch-arm / usr / incl
Abortando
Árbol de trabajo de sincronización: 100% (153/153), hecho.

error: development /: platform / development checkout caf83cb2b0ffde1a4cfb7cb258cbe012e283d9e1 Sincronización de repositorio devuelta FAIL en android-2.1_r2.1s

He encontrado algunas publicaciones con errores similares que indican que esto podría deberse a que el repositorio no está sincronizado con los archivos "modificados" en el sistema de archivos, pero me pregunto si mis errores son causados por el cambio de versiones bajo la supervisión del repositorio.

¿Es esta la forma correcta de cambiar las versiones del repositorio? En términos más generales, ¿hay una manera eficiente de tiempo / ancho de banda para convertir unaandroid-1.6_r1 repositorio en unaandroid-1.6_r2?

Respuestas a la pregunta(2)

Su respuesta a la pregunta