2010-11-08 22 views
28

Estoy investigando el control de revisiones en la práctica, y parece que hay dos nombres para lo mismo en libros y documentos: Software Configuration Management (SCM) y Version Control Systems (VCS). El primero parece ser popular entre los ingenieros de software/programadores de Java, y el segundo con los de los administradores de sistemas, pero ambos parecen, a simple vista, significar lo mismo.¿Cuál es la diferencia entre VCS y SCM?

Por otro lado, en el pasado he interpretado que SCM significa algo como títere o cfengine. ¿Alguien me puede aclarar estos dos términos en la práctica? Preferiblemente con ejemplos concretos.

+10

Creo que está mezclando acrónimos, creo que quiere decir Source Code Management, no Software Configuration Management, en cuyo caso no hay diferencia, son solo dos nombres diferentes para la misma cosa. http://www.google.com.au/search?q=define:scm –

+0

@Matthew: este es probablemente el caso. – JimDaniel

+0

Por otro lado, este tipo está bastante bien considerado y usa Software Config: http://www.scmpatterns.com/book/ – jldugger

Respuesta

19

Los sistemas de control de versiones son simplemente eso, el software que proporciona la funcionalidad de control de versiones (Git, Subversion, Control de versiones TFS) caen todos en esta categoría.

Software Configuration Management es un término más amplio que engloba todos los procesos necesarios para compilar, empaquetar y desplegar software; esto incluye los sistemas de control de versiones. No se refiere al software per se.

48

Precaución, SCM puede referirse a diferentes significados acerca de las versiones:

Por otra parte, las personas pueden utilizar SMC para referirse a otra nomenclatura:

  • Código Fuente Gestión como en GestiónSource Code Control System
  • código de software, pero esto es una deformación de Software Configuration Management
  • Gestión de la Configuración Fuente mismo significado que Software Gestión de la Configuración pero tal vez más centrado en código fuente que en todo el software (ajustes, los argumentos de línea de comandos, parámetros de acogida ...)

definamos ellos:

  • Sistemas de control de versiones son el software independiente para administrar las versiones (Git ...) Gestión
  • control de código fuente es la misma que VCS
  • Software Configuration Management es todos los procesos para gestionar todos los cambios del software: el desarrollo (VCS), la liberación para el suministro (VCS), el seguimiento de errores, la configuración del software, la configuración de host/red, la versión/ajustes del otro software que interactúa con ...

Por lo tanto, simplemente usando el acrónimo SMC es confusa: algunas personas pueden comprender el mismo significado que VCS, algunos otros pueden entender todo el proceso en el que VCS es sólo un aspecto.

Cuestiones relacionadas