web-dev-qa-db-fra.com

Quelle est la différence entre la gestion de configuration et le contrôle de version?

Quelqu'un peut-il expliquer en termes simples quelle est la différence entre la gestion de la configuration et le contrôle de version? D'après les descriptions que j'ai pu trouver sur divers sites Web, il semble que la gestion de la configuration ne soit qu'un terme de fantaisie pour mettre vos fichiers de configuration dans un référentiel de contrôle de source. Mais d'autres me font croire qu'il existe une explication plus complexe.

31
friedo

Le contrôle de version est nécessaire mais pas suffisant pour la gestion de la configuration. Le contrôle de version se produit dans un référentiel central ou distribué, mais ne dit rien sur l'endroit où une version particulière est déployée ou utilisée.

La gestion de la configuration s'inquiète de la façon de prendre ce qui est dans le contrôle de version et de le déployer de manière cohérente aux endroits appropriés, principalement QA et production, mais également dans une opération de développement suffisamment importante pour les développeurs.

Par exemple, vous pouvez conserver toutes vos requêtes SQL dans le contrôle de version, y compris vos scripts de modification de table, mais cela ne contrôle pas le moment où ces scripts sont déployés sur le serveur de base de données approprié et synchronisés avec le déploiement de tout autre code qui s'appuie sur cette structure de base de données.

27
Yishai

La gestion de la configuration comprend, mais sans s'y limiter, le contrôle de version.

Gestion de la configuration est tout ce dont vous avez besoin pour gérer en termes de projet. Cela inclut les logiciels, le matériel, les tests, la documentation, la gestion des versions, etc. Il identifie chaque composant utilisateur final et suit chaque modification proposée et approuvée du jour 1 du projet au jour de la fin du projet.

Contrôle de version est spécifiquement appliqué aux fichiers informatiques. Cela inclut les documents, les feuilles de calcul, les e-mails, le code source, etc.

19
Thomas Owens

Le contrôle de version consiste à enregistrer des fichiers et à en conserver différentes versions, afin que vous puissiez voir le changement au fil du temps.

La gestion de la configuration est généralement désignée comme un processus global qui permet de garder une trace de la version du code sur quel serveur, de la configuration des serveurs (et des scripts d'installation pour le faire à de nombreux endroits). C'est comment le processus de ce qui se passe après que le code passe au contrôle de source et comment est déployé sur les serveurs/bureaux, etc.

9
kemiller2002

La gestion de la configuration est un terme ambigu.

Dans le logiciel, il a tendance à être un surensemble de contrôle de version mettant l'accent sur l'ensemble du processus pour produire un résultat de manière reproductible et prévisible.

Dans la maintenance informatique, elle est liée à la maintenance des paramètres de configuration et des versions matérielles/firmware/logiciels de réseaux entiers et d'un ensemble de machines informatiques attachées (y compris serveurs, clients, routeurs ...).

Dans la fabrication de matériel, il représente même un surensemble des deux ci-dessus, y compris les pièces matérielles et les modules logiciels nécessaires pour obtenir un produit, avec la description du processus pour les fabriquer, et même parfois les schémas et configurations entiers des lignes de production elles-mêmes .

1
armel

Contrôle de version est le contrôle des livrables alors que gestion de la configuration gère l'ensemble du processus conduisant à produire les livrables. La gestion de la configuration implique la gestion du changement, la gestion de projet, etc., qui ne sont généralement pas gérées par un simple contrôle de version.

1
S.K.Goswami

En plus de tout ce qui précède, je voudrais recommander le livre de Bob Aiello intitulé "Meilleures pratiques de gestion de la configuration" - http://www.Amazon.com/dp/0321685865 . Il couvre tous les aspects de la gestion de la configuration logicielle, y compris le contrôle de version.

1
Yury

En gros, le contrôle de version signifie que vous pouvez vérifier la source d'une version particulière. La gestion de la configuration signifie que vous pouvez créer et déployer et probablement tester n'importe quelle version particulière.

0
David Thornley

Cela peut être utile.

Versions et configurations

Versions:

  • Possibilité de gérer plusieurs versions d'un objet.

  • On le trouve couramment dans de nombreux environnements d'ingénierie logicielle et d'ingénierie simultanée.

  • La fusion et la réconciliation des différentes versions sont laissées au programme d'application

  • Certains systèmes conservent un graphique de version

Configuration:

  • Une configuration est une collection compatible de versions de modules d'un système logiciel (une version par module)
0
vij