2010-04-08 4 views
1

La portée de ceci est que nous avons trois projets principaux. Certains des fichiers sources sont partagés entre les projets. Il y a près de 3 millions de lignes de code (sans compter les commentaires ou les espaces) qui ont augmenté depuis plus de 20 ans. Nous utilisons actuellement Source Safe pour notre suivi des versions. Mais cela commence à nous manquer car nous développons non seulement nos produits, mais aussi le nombre de développeurs que nous utilisons dans différents modules partagés. Un exemple de fichier partagé serait une classe de modèle. Le code est solide et est utilisé dans de nombreux projets. C'est un fichier unique donc il est juste partagé entre les projets. Maintenant, 20 ans plus tard, un fichier est passé à plus de 1000 fichiers (Oui j'aimerais refactoriser et faire des bibliothèques, ne se passe pas). Est-ce que Mercurial soutient le même genre de concept d'une manière ou d'une autre?Mercurial est une bonne option où nous avons de nombreux projets qui partagent des fichiers source

Merci Mark

+0

Les fichiers "partagés" sont-ils dupliqués entre chaque projet? –

+0

étant 'partagé' dans Source Safe signifie qu'il existe une copie unique du fichier, mais si je fais un get sur les trois projets, j'aurai trois copies de chaque fichier. L'avantage du passé est que si nous corrigeons un bogue dans une copie du fichier et que nous l'enregistrons, tout le monde verra le changement à l'étape suivante. – user312256

Répondre

2

Mercurial subrepos peut être ce que vous cherchez, si je lis bien votre question.

+0

Comme je commence à jouer avec Mercurial, ma compréhension est limitée. J'ai relu les sous-états et j'ai eu l'impression que les fichiers partagés seraient dans un sous-répertoire. À l'heure actuelle, nous aurions le produit A et B. Le produit A a les projets 1-25 et le produit B a les projets 1-100. Donc A.1, B.3 et B.7 partagent un fichier a1. Donc a1 est dans les répertoires respectifs de A.1, B.3 et B.7. Mais sous Mercurial je créerais aussi un projet C pour contenir a1. Ensuite, quand j'utilise les sous-états, ma structure de répertoire serait quelque chose comme A.1.C.a1, B.3.C.a1 et B.7.C.a1. Est-ce correct? – user312256

+0

Oui, c'est comme ça que ça marcherait. Je crains que vous deviez avoir recours à des liens symboliques ou quelque chose pour que le fichier apparaisse dans le répertoire parent ... – legoscia

Questions connexes