INFORME:
HERRAMIENTAS PARA CONTROL DE
VERSIONES
Autora: Eli Agirre
ENTORNOS DE DESAROLLO
ÍNDICE
¿Qué es el control de versiones? 2
¿Cómo funcionan las herramientas para el control de versiones? 2
Herramientas más utilizadas tanto libres como propietarias. 2
Referencias 3
1
ENTORNOS DE DESAROLLO
CONTROL DE VERSIONES
¿Qué es el control de versiones? ¿Por qué es importante al desarrollar?
Un Sistema de Control de versiones es una herramienta software que, de
manera automática, se encarga de facilitar la gestión de las versiones del código de
un proyecto de manera centralizada.
Una versión, revisión o edición de un producto es el estado en el que se
encuentra dicho producto en un momento dado de su desarrollo o modificación.
Una característica importante de un sistema de control de versiones es que
cada uno no tiene un número de revisión independiente sino un único número de
versión que identifica un estado común de todos los archivos del repositorio en un
instante determinado del repositorio que se está trabajando.
¿Cómo funcionan las herramientas para el control de versiones?
La subversión es una de las herramientas para el control de versiones y es un
sistema de control de versiones diseñado específicamente para reemplazar al
popular CVS. Es software libre bajo una licencia de tipo Apache/BSD. Es una
herramienta bajo comandos de línea.
Subversión puede acceder al repositorio a través de redes. La posibilidad de
que varias personas puedan modificar y administrar el mismo conjunto de datos
desde sus respectivas ubicaciones fomenta la colaboración. Se puede progresar
más rápidamente sin una única persona por el cual deban pasar todas las
modificaciones.
Analizar situación actual. Herramientas más utilizadas tanto libres como
propietarias.
Hay dos tipos de herramientas de control. Por un lado, se accede
directamente al repositorio en el sistema de ficheros, de modo local. Y por otro
lado, el servidor utilizado puede ser el propio servidor adhoc que viene incluido
con la distribución de Subversión (svnserve), o como un módulo de Apache
mediante la red.
2
ENTORNOS DE DESAROLLO
Centrándonos en las herramientas de distribución por red, las herramientas
más utilizadas de código abierto son los siguientes:
- Concurrent Versions System (CVS). Basado originalmente en RCS,
licenciado mediante GPL.
- Subversion (svn). Inspirado en CVS.
- Vesta. Sistema de construcción con soporte para versionado de ficheros en
repositorios distribuidos
Las siguientes herramientas son propietarios:
- AccuRev. Es una herramienta para gestión de la configuración de código
fuente que integra un gestor de incidencias basado en flujos que maneja de
forma eficiente desarrollo paralelo a escala global; también contempla un
servidor para replicación.
- CA SCM. Herramienta para gestión de cambios y configuración de Computer
Associates.
- Autodesk Vault. Herramienta de control de versiones diseñada
específicamente para aplicaciones Autodesk que gestionan las relaciones
complejas entre ficheros de diseño elaborados por AutoCAD y Autodesk
Inventor.
- ClearCase. Es el sistema de gestión de configuración compatible con
VSSfabricado por Rational Software (IBM).
- MKS Integrity. Sistema para gestión del ciclo de vida de aplicaciones
software.
- Perforce. Herramienta con intuitivo interfaz gráfico, configuración
avanzada para funcionamiento en arquitecturas de red complejas -proxy,
máster-réplica, broker- y funcionamiento off-line, así como interfaz con los
IDEs más extendidos y aplicable a documentos no ASCII.
- SourceAnywhere. Herramienta de control de versiones por Dynamsoft.
- Telelogic Synergy. Gestor de cambios integrado compatible con SCC y
gestor de configuración basado en tareas, de IBM.
- Visual SourceSafe. Herramienta de control de versiones de Microsoft;
orientada a equipos pequeños
- Visual Studio Team Foundation Server. Es un sistema orientada a
Plataforma .Net.
3
ENTORNOS DE DESAROLLO
Referencias
Control de versiones
Subversión
Programas para control de versiones