Qu'est-ce que Repo et Pourquoi est-ce que Google l'utiliser?
Lorsque j'ai voulu obtenir code source Android, je savais que je dois utiliser "repo". Quel est donc le repo? Pourquoi utilisent-ils des pensions et pas seulement l'utilisation de GIT?, et s'il y a une interface graphique pour pensions de titres qui me permet de mettre en pause/reprendre la synchronisation, car à chaque fois que je suis déconnecté parfois, il semble que les pensions commence la synchronisation depuis le début!
Vous devez vous connecter pour publier un commentaire.
Repo git - ce qu'ils sont, ce qu'ils sont pour - est expliqué sur source.android.com
Il n'y a pas de GUI pour Pensions de titres, autant que je puisse en dire, mais il y a un peu de conseils sur le site ci-dessus pour le contrôle des Pensions de est de le faire à partir de la ligne de commande.
repo
ajoute un niveau de complexité àgit
qui est déjà très complexe. En outre, de nombreuses commandes de base ne sont pas mises en œuvre dansrepo
(commelog
ourebase
) et vous devrez écrire vos propres scripts ci-dessusrepo
si vous souhaitez travailler normalement (faire une synchronisation avec les modifications locales est compliqué avecgit
, avecrepo
c'est la seconde GUERRE mondiale). Un autre exemple:repo
va mettre la gits dessous dans détaché unis, qui les rendent plus difficiles à gérer.Comme il est mentionné dans l'android page web,
repo
ne remplace pasgit
. C'est juste un outil de plusgit
et vous aide à gérer plusieurs dépôts git.Par exemple, supposons que j'ai un gros projet qui a beaucoup de fonctions, et j'ai plusieurs équipes travaillant sur chaque fonction et j'ai créé un référentiel pour chaque fonctionnalité. Par exemple, supposons que mes dépôts sont
wifi
,telephony
,power management
, etc. Cette action a de sens que lorsque les caractéristiques de votre ont des cycles de vie différents. Par exemple, si je ne touche pas à lawifi
fonctionnalité dans ma prochaine version, mais je vais modifier tout le reste. Ainsi, en vertu de ce scénario, mon projet ou d'un produit est distribué dans plusieurs dépôts git.Donc, pour obtenir une centralisation de la photo de mon projet (un moment précis de mon projet, par exemple une étape), j'ai besoin d'obtenir la révision (git de hachage ou tag) de chaque référentiel. Rappelez-vous que nous avons un référentiel pour chaque fonctionnalité. Manuellement je pouvais le faire, mais peut être très douloureux. Donc, avec des pensions de titres, vous pouvez avoir un
MANIFEST
qui s'associe à toutes les révisions de chaque repo git (un pour chaque fonction) et ont une image spécifique de l'ensemble de mon projet.Simplement, je pourrais dire que c'est une façon de gérer centralisée de plusieurs dépôts git qui sont décentralisés.
Avec repo vous avez plus de fonctionnalités, non seulement à la caisse à un moment précis. Pour plus d'info, allez sur http://source.android.com/source/using-repo.html.
Concernant la mettre en pause et redémarrer point, tandis que dans une fenêtre de terminal en faisant une pension de synchronisation, vous pouvez frapper les touches "ctrl + z" pour interrompre l'opération de synchronisation. Pour redémarrer il suffit de taper "fg" dans la même fenêtre.
pensions de synchronisation a différentes options utiles:
-f récupère de se déconnecte
-c, juste télécharge la branche que vous avez demandé
-j <#CPUS> accélère la synchronisation en augmentant le nombre de processeurs utilisés par la commande
Aller à:
http://source.android.com/source/git-repo.html
et vous pouvez télécharger le
repo
script. C'est un script Python qui utilise lagit
commande distribué révision du code source.Après que vous avez exécuté
repo sync
, faire unps -auwf
pour voir les processus:Pour la mienne je l'ai vu:
Oui,
repo sync
souvent des pauses. Mais il est robuste, suffit de redémarrer la commande et il va reprendre la synchronisation de nouveau - ceux qui ont été mis à jour, il ne sera pas appliqué, de sorte qu'il va sauter sur eux, et continuer avec le reste.