2010-10-26 8 views

Répondre

3

Cela dépend si vous utilisez beaucoup de code partagé via des bibliothèques ou des services. Si vous partagez des bibliothèques dont vous avez besoin à différentes versions, il est plus facile de les séparer et d'utiliser des sous-modules git (via l'esclave git, si vous préférez). Si vous souhaitez que les bibliothèques soient les plus récentes pour tous les projets (car elles accèdent à un magasin de données commun), vous pouvez accepter un seul dépôt. Les dépôts séparés peuvent être plus faciles à contrôler, mais gitolite est excellent car il peut être limité par la branche et bien d'autres choses.

Vous pouvez ensuite joindre des référentiels et des historiques de greffe via "git rebase --root --onto branch1". Ou vous pouvez en diviser un en plusieurs avec git filter-branch.

Donc, je ne voudrais pas trop transpirer. Vous utilisez git pour une raison. Vous pouvez changer d'avis plus tard et garder l'historique.

1

Vous pouvez aller dans les deux sens en fonction de vos besoins, en particulier de la relation entre les projets - Si les projets se trouvent dans le même référentiel, il est plus facile d'ajouter des références entre eux. Si elles se trouvent dans des référentiels différents, il est plus facile d'avoir différents paramètres de contrôle d'accès.

Si les projets sont dans la même solution, vous aurez certainement besoin d'un seul référentiel.

0

J'ai travaillé avec Git avec un très grand ensemble de projets (200+) dans lequel l'application était un groupe de projets de base avec beaucoup de projets plug-in. Nous avons utilisé le script Repo d'Android (http://source.android.com/source/git-repo.html) pour vous aider à les gérer. Il était nécessaire pour nous car nous avions une douzaine de configurations de plug-in pour différents produits. C'est un outil assez lisse. L'inconvénient majeur est le manque de documentation pour le repo et l'horrible choix de nom (pas de recherche conviviale).

Questions connexes