¿Cómo puedo limitar el tamaño de la fuente de Android que necesito descargar con "sincronización de repositorio"?

16

Estoy planeando irme a un país con una mala conexión a Internet, donde espero hacer algún desarrollo de software.

He estado usando repo syncpara sincronizar la fuente de Android (y la fuente de CyanogenMod en mi servidor de AWS). Pero son tan grandes (> 30 GB) que no los obtendré antes de salir de mi país.

¿Hay alguna forma de excluir el código del árbol? Solo necesito el dispositivo Nexus 7 (wifi) (mero). ¿Puedo excluir algún proyecto? ¿Si es así, cómo?

Estoy usando Ubuntu 12.04 y repo.

(Estoy usando tabletas Android para educar a los niños en partes muy pobres del mundo. Quiero bloquear la interfaz de usuario, para que los niños solo puedan usar las aplicaciones educativas. Como medida antirrobo, necesito habilitar la creación de un punto de acceso Wi-Fi y haga que las tabletas se desactiven si no están conectadas a otras tabletas a través de Wi-Fi durante 48 horas).

Chris
fuente
2
¿Tal vez pueda clonar --depth 0para obtener la última revisión? O un pago escaso: Pagos subdirectorios con git sparse-checkout »Code Nomad
slhck
De acuerdo con nómada. Gran parte de la fuente es el historial de versiones. Las partes específicas del dispositivo no son tanto. Además, en lugar de clonar todo el sistema operativo, podría obtener los repositorios git para la parte que le interesa.
Nicholaz
¡Muchas gracias, es un consejo invaluable para alguien con una conexión a Internet terrible! En el archivo 'repo', está la sección: group.add_option('--depth', type='int', default=None, dest='depth', help='create a shallow clone with given depth; see git clone')cambié la profundidad predeterminada a 0 y reinicié la sincronización de repo. Informaré si esto hace lo que quiero.
Chris
No estoy seguro de si esto funcionó o no: la fuente completa aún tenía 42 GB, lo que alguien dice que es el árbol completo. No puedo confirmar aún, ya que estoy a medio camino de ftp'ing local.
Chris
2
Estimado OP: Su pregunta es buena. Sin embargo, lo preguntaste en el sitio web equivocado. Si hubiera hecho su pregunta en el lugar correcto (en Stack Overflow), habría obtenido más y mejores respuestas. He vuelto a hacer una pregunta similar sobre Stack Overflow ; ve allí si quieres ver mejores respuestas.
unforgettableidSupportsMonica

Respuestas:

36

Esto podría ser demasiado tarde. Pero:

  • Podrías pasar --depth=1para repo initobtener un clon poco profundo.
  • Y podría usar repo sync -cpara pagar solo la rama actual.
Rakesh
fuente
55
Puede ser demasiado tarde para ayudar al autor de la pregunta original. Pero no es demasiado tarde para ayudar a otras personas que también quieren hacer un clon superficial de Android.
unforgettableidSupportsMonica
66
Gran consejo Un consejo más: lo uso repo sync -c -n -j 4 && repo sync -c -l -j 16para una sincronización más rápida
Korniltsev Anatoly
0

Mientras se invoca la sincronización de repositorios, aunque se selecciona una rama específica, se descarga el código de todas las ramas. Para limitar el tamaño de descarga, puede descargar manualmente el código del sitio web de github. De esta manera, puede descargar el código de la sucursal que desee.

Abitatha Roy
fuente