Comment puis-je limiter la taille de la source Android que je dois télécharger avec «synchro repo»?


16

Je prévois de partir pour un pays avec une mauvaise connexion Internet, où j'espère faire du développement logiciel.

J'utilise repo syncpour synchroniser la source Android (et la source CyanogenMod sur mon serveur AWS). Mais ils sont si gros (> 30 Go) que je ne les aurai pas avant de quitter mon pays.

Existe-t-il un moyen d'exclure du code de l'arborescence? Je n'ai besoin que du Nexus 7 (wifi) (mérou). Puis-je exclure des projets? Si c'est le cas, comment?

J'utilise Ubuntu 12.04 et repo.

(J'utilise des tablettes Android pour éduquer les enfants dans les régions très pauvres du monde. Je veux verrouiller l'interface utilisateur, afin que les enfants ne puissent utiliser que les applications éducatives. En tant que mesure antivol, je dois activer la création d'un point d'accès Wi-Fi et désactivez les tablettes si elles ne sont pas connectées à d'autres tablettes via Wi-Fi pendant 48 heures.)


2
Peut-être que vous pouvez cloner avec --depth 0pour obtenir uniquement la dernière révision? Ou une caisse creuse
slhck

D'accord avec Nomad. Une grande partie de la source est l'historique des versions. Les pièces spécifiques à l'appareil ne sont pas tant que ça. De plus, au lieu de cloner tout le système d'exploitation, vous pouvez simplement obtenir les référentiels git pour la partie qui vous intéresse.
Nicholaz

Un grand merci, c'est un conseil inestimable pour quelqu'un sur une terrible connexion Internet! Dans le fichier 'repo', il y a la section: group.add_option('--depth', type='int', default=None, dest='depth', help='create a shallow clone with given depth; see git clone')j'ai changé la profondeur par défaut à 0 et redémarré la synchronisation du repo. Je ferai rapport si cela fait ce que je veux.
Chris

Je ne sais pas si cela a fonctionné ou non - la source complète était toujours de 42 Go, ce que quelqu'un dit être l'arborescence complète. Je ne peux pas encore le confirmer, car je suis à mi-chemin du ftp'ing local.
Chris

2
Cher OP: Votre question est bonne. Cependant, vous l'avez demandé sur le mauvais site Web. Si vous aviez posé votre question au bon endroit (sur Stack Overflow), vous auriez obtenu de meilleures réponses. J'ai re-posé une question similaire sur Stack Overflow ; veuillez y aller si vous voulez voir de meilleures réponses.
inoubliableidSupportsMonica

Réponses:


36

C'est peut-être trop tard. Mais:

  • Vous pourriez passer --depth=1à repo initpour obtenir un clone peu profond.
  • Et vous pouvez utiliser repo sync -cpour extraire uniquement la branche actuelle.

5
Il peut être trop tard pour aider le demandeur d'origine. Mais il n'est pas trop tard pour aider d'autres personnes qui souhaitent également faire un clone peu profond d'Android.
inoubliableidSupportsMonica

6
Bon conseil. Un autre conseil: j'utilise repo sync -c -n -j 4 && repo sync -c -l -j 16pour une synchronisation plus rapide
Korniltsev Anatoly

0

Pendant que la synchronisation de dépôt est invoquée, bien qu'une branche spécifique soit sélectionnée, le code de toutes les branches est téléchargé. Afin de limiter la taille du téléchargement, vous pouvez télécharger manuellement le code depuis le site Web de github. Comme ça, vous pouvez télécharger le code de la branche que vous souhaitez.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.