Contrôle à la Source ou contrôle de révision?

Quel est le nom correct pour un système qui stocke des versions de code source, comme SVN ou TFS?

j'ai toujours appelé le contrôle source, mais des endroits comme Wikipedia l'appelle le contrôle de révision?

pour rendre ces sites plus compliqués comme celui-ci ont une étiquette pour les deux?

56
demandé sur Zyerah 2009-06-29 11:04:18

12 réponses

  • contrôle de révision est le terme plus générique, utilisé pour les outils de contrôle des sources mais aussi pour d'autres outils (Word, OpenOffice, ...). Il fait référence à une version.

  • Source Control offre un contrôle de révision avec branchement et fusion qui ne sont pas toujours disponibles dans tous les outils de révision (Word n'est pas un contrôle de Source, mais offre des fonctionnalités de contrôle de révision)

  • contrôle de Version est un terme plus général que le contrôle de Source en ce qu'il gère la version de n'importe quoi (sources ou binaires, ou n'importe quel type de documents)

Note: SCM signifie gestion de Code Source, mais aussi Gestion de code logiciel, pour refléter la même idée (non seulement les" sources " sont gérées).

Plus SCM introduit la notion de dépendances entre les groupes de fichier.

Et cela peut aussi inclure la notion de cycle de vie du changement (démarrer un changement, fermer un changement,...)...) qui conduit au système de requête de changement.

75
répondu VonC 2016-04-21 10:31:18

j'aime à penser de cette façon:

contrôle de révision est ce que ils font .

Source Contrôle est ce que je les utilise pour.

: -)

13
répondu Ron Savage 2011-09-27 16:00:42

il y a trois synonymes qui décrivent presque la même chose:

  1. contrôle de révision . Traite des révisions (examens de documents/artéfacts et versions subséquentes de documents/artéfacts) ou nombres (comme une abstraction de révision concept).
  2. Source contrôle . Traite avec texte (source) Fichiers, pas binaire . Cette différence joue un grand rôle tant qu'il est beaucoup plus facile d'effectuer la comparaison et obtenir la différence entre texte "1519140920 de fichiers". Il existe toute une gamme d'outils de base liés au contrôle à la source: diff , diff3 , patch , etc. Cet ensemble d'outils peut être étendu pour former une solution de contrôle à la source. Le SCR est un exemple d'une telle solution.
  3. gestion du code Source . Traite opérations plus complexes sur le code source: le stocker dans un repository avec la possibilité de créer séparé branches . Il est également supposé que les branches peuvent être merged . Une autre partie de la gestion du code source est tagging . Un problème avec la gestion du code source est qu'il a abréviation SCM. Cette abréviation est utilisée pour décrire un ensemble plus large d'activités - Software Configuration Management . Il y a beaucoup de confusion parce que gestion du code source est un sous-ensemble de gestion de la configuration du logiciel qui traite également des activités telles que gestion de la construction , gestion du déploiement , intégration continue , gestion des dépendances , gestion des versions , etc.
  4. contrôle de Version . Il est utilisé comme la substitution de ces terme gestion du code source afin d'éviter toute ambiguïté. Il incorpore les deux concepts de contrôle de révision et contrôle de source ce qui en fait de décrire presque le même concept. Actuellement, les deux termes contrôle de révision , contrôle à la source sont remplacés par contrôle de version comme plus approprié en tenant compte la large gamme d'outils (CVS, SVN, Git, Mercurial, ClearCase, Perforce, VSS, etc.) qui résolvent les deux tâches de contrôle de révision et contrôle de source simultanément.

pour illustrer plus clairement la distinction entre tous ces concepts:

enter image description here

12
répondu altern 2012-01-19 12:09:36
  • Version Control System (VCS) est le terme le plus couramment utilisé
  • Source Code Management (SCM) est utilisé dans git, mais il est en quelque sorte inventé et peut être confondu avec Software Configuration Management qui est déjà utilisé dans l'industrie du logiciel et ce n'est pas la même chose.
5
répondu FelipeC 2009-06-29 08:08:58

La terminologie utilisée n'est pas très précis. Un article décrit les cinq dimensions pertinentes. Les outils de gestion des données pour le développement de logiciels n'ont pas tendance à prendre en charge plus de trois d'entre eux de manière cohérente en même temps. Si vous voulez soutenir les cinq, vous devez décrire un processus de développement:

  • Version (sémantique: modification)
  • (Vue sémantique: à l'équivalence, la dérivation)
  • hiérarchie (sémantique: se compose de)
  • statut (sémantique: approbation, accessibilité)
  • variante (sémantique: variations de produits)

Peter van den Hamer and Kees Lepoeter (1996) Managing Design Data: the Five Dimensions of CAD Frameworks, Configuration Management, and Product Data Management, Proceedings of the IEEE, vol. 84, No. 1, Janvier 1996

4
répondu Stephan Eggermont 2009-07-07 11:36:43

certains systèmes (comme SVN) ont un terme révision qui signifie un nombre associé à un ensemble spécifique de versions de tous les fichiers du dépôt. Dans de tels systèmes révision ( révision SVN ) signifie essentiellement version ( les sources de la version ). Sinon contrôle de révision et contrôle de version sont les mêmes termes.

3
répondu sharptooth 2009-06-29 07:10:14

il n'y a pas de nom" correct", les quatre noms communs sont:

  • système de contrôle de Version
  • système de contrôle de révision
  • système de contrôle de Source
  • code Source système de gestion de la
2
répondu jwanagel 2009-06-29 07:07:33

un autre nom est: version-contrôle

basé sur les tags utilisés sur ce site, "source control" est le plus populaire (ce qui est tout à fait normal, puisque ce site est sur la programmation):

  • contrôle de code source (633 tags)
  • contrôle de version (587)
  • contrôle de révision (31)
2
répondu M4N 2009-06-29 07:11:23

MIL-STD 973 décrit la gestion de la Configuration.

la gestion de la Configuration du Logiciel se fait exactement de la même manière.

voir la CMMI pour une explication concise du SCM/CM.

Les systèmes dont vous parlez sont des systèmes de contrôle de version. Ils version des choses.

L'Ancien SCCS était un système de contrôle de Code Source.

code Source les systèmes de contrôle maintiennent l'historique des révisions.

dites que vous changez un fichier de révision

1.1, 1.2, 1.3.

à la version 1.3, nous publions "Awesome Edition" de notre produit.

1.3 est une révision Awesomeeedition est une version.

dans les systèmes comme CVS, les révisions se produisent lorsque la numérotation change , et les étiquettes marquent les versions. La numérotation des révisions du dépôt de type SVN confond les clients du gouvernement qui s'attendent MIL-STD genre de comportement.

la grande chose au sujet des normes dans la gestion du changement, c'est qu'il y en a tellement à choisir.

1
répondu Tim Williscroft 2009-07-08 05:02:26

si la préséance historique est quelque chose à passer, le terme devrait être le contrôle du Code Source - voir http://en.wikipedia.org/wiki/Source_Code_Control_System

0
répondu 2009-07-05 17:22:09

alors, que cherchez-vous exactement maintenant?

Je ne pense pas qu'il y ait un terme juste. Les deux termes, ainsi que certains autres déjà mentionnés dans d'autres réponses sont utilisés pour la même chose.

les personnes à qui vous parlez vont le relier à un sens légèrement différent même en utilisant le même mot pour lui - et ils peuvent signifier vraiment exactement la même chose, même en utilisant un autre mot.

puis à nouveau, le le vocabulaire utilisé autour de ces choses peut aussi être différent(ou attaché à différentes significations) dans les cercles autour de différentes implémentations logicielles de ce concept.

en écrivant ceci, il me vient à l'esprit que c'est un phénomène très naturel - dans d'autres domaines, vous avez aussi plusieurs mots qui représentent essentiellement la même signification - tandis que certains soutiendraient qu'il y a effectivement de légères différences, d'autres diraient que ces différences n'existent pas vraiment ou ne valent pas la peine d'y penser. Et il n'est jamais garanti que quand deux personnes utilisent le même mot, ils pensent vraiment la même chose.

0
répondu Henning 2009-07-09 12:33:58

j'ai ajouté un commentaire, mais je pense qu'il peut recevoir une réponse. J'ai un peu de vue différents, alors que certains des autres commentaires déjà exprimés.

En général SCM (Logiciel de Gestion de la Configuration) ou (Gestion du Code Source dérivé à terme), il est facile à comprendre car il est utilisé comme un terme générique qui comprend à la fois le contrôle de révision ainsi que d'autres techniques comme la gestion de ligne de base. Voir http://en.wikipedia.org/wiki/Software_configuration_management . En général, les outils modernes de GCA, qui vont du CVS au Git, comprennent à la fois ces techniques et de nombreuses autres fonctionnalités utiles telles que: le contrôle des autorisations, la gestion des droits, l'audit de sécurité, la personnalisation du flux de GCA (ClearCase), l'intégration avec le système de construction et le logiciel de suivi des problèmes, etc... Je pense que la liste est ouverte parce que tout ce qui concerne le changement de logiciel et la gestion peut entrer ici.

donc la principale confusion vient de la compréhension de la différence entre le contrôle de révision, le contrôle de Version et éventuellement le contrôle Source. Tout d'abord, tous les termes qui incluent "source" sont tous des termes dérivés, je veux dire que certaines personnes sont dérangées par tous ces termes génériques (gestion de la configuration - qu'est-ce que c'est?) et insistent pour qu'ils travaillent avec le code source en particulier et ils ne se soucient pas des autres cas d'utilisation; ce qui est juste.

Concernant Le Contrôle De La Révision vs Version Control je pense que le terme correct (dans le contexte D'outils comme SVN, Git) est le contrôle de révision. À mon avis, avec le terme contrôle de révision, l'accent est mis sur la gestion du changement (en plus de la gestion des versions) des fichiers de code source (et pas seulement), tandis qu'avec le contrôle de Version, l'accent est mis uniquement sur la gestion des versions des fichiers.

en théorie quelqu'un pourrait écrire un morceau de logiciel qui permet le suivi et la gestion des fichiers binaires sans diff binaire et fusion de prise en charge et appellerait ce système de contrôle de Version. Cependant dans le cas D'outils comme SVN, Git ceux-ci permettent en plus de gérer les modifications aux fichiers: diffing, Fusion et dans le cas de Git le célèbre rebasing.

donc en conclusion, le contrôle de révision inclut le contrôle de Version et est plus approprié pour nommer des outils comme CVS, SVN, Git; tandis que le contrôle de Source est un terme dérivé et devrait être évité si on j'aimerais nommer un aspect particulier de la GCA.

SCM > Revision Control > Version Control
0
répondu arpadf 2014-10-23 07:37:28