Il existe indiscutablement de nombreux avantages dans l'utilisation de dvcs et il peut être utilisé comme vcs centralisé, mais a des commits locaux et peut très facilement bifurquer le projet pour un petit groupe rendant plus difficile l'intégration continue? Il aide au développement que tout le monde a accès aux changements les plus récents, qui sont testés par le serveur CI afin que la possibilité de changements incompatibles puisse être minimisée.L'utilisation de dvcs rend-elle plus difficile l'intégration continue dans les environnements d'entreprise?
Répondre
Vous pouvez centraliser un DVCS. La différence entre DVCS et ceux centralisés est qu'avec un DVCS, vous n'avez pas pour le centraliser.
Vous pouvez avoir un référentiel central où tout le monde peut apporter des modifications, et tout le monde peut tirer le dernier code. Vous pouvez écrire un hook de validation sur le serveur de sorte que chaque fois que quelqu'un pousse du code, il effectue un test pour s'assurer qu'il réussit les tests. C'est juste comme le contrôle de version centralisé, mais mieux, parce que je peux créer une branche locale et faire plusieurs commits locaux avant que je ne sois prêt à pousser vers le serveur central.
Avez-vous déjà fait un grand changement qui brise beaucoup de choses, et voulu faire plusieurs commits, mais ne pas les partager jusqu'à ce que vous avez terminé et tout est résolu à nouveau? C'est ce que DVCS rend facile.
Cela rend plus difficile l'exécution d'un CI, car le système de contrôle de la source vous encourage à ne PAS l'intégrer en continu. Cependant, il n'y a absolument rien qui vous empêche de faire cette intégration régulière dans le référentiel central. L'équipe doit juste rester disciplinée à ce sujet.
Lorsque des équipes plus petites organisent le projet et font leurs propres tâches pendant un certain temps, vous devez également effectuer des intégrations continues dans cette fourchette et éventuellement établir une intégration régulière entre les deux fourches.
Ce serait similaire au flux sur la base des stratégies d'intégration continue à plusieurs étages qui AccuRev pousse:
http://www.accurev.com/multistage-continuous-integration.html