CVS y Subversion

Anonim

CVS vs. Subversion

El Sistema de versiones concurrentes (también conocido como Sistema de control de versiones concurrentes o CVS) es un sistema de control de revisión de software gratuito, es decir, es un programa abierto al público que administra cambios a documentos, programas y otra información almacenada en la computadora. archivos). Permite a múltiples desarrolladores colaborar.

Subversion (también conocido como SVN) es un sistema de control de versiones que se usa para mantener las versiones actuales y anteriores de los archivos (como el código fuente, las páginas web y la documentación). Es una actualización directa de CVS y su sucesor más compatible. También es una tecnología de código abierto y se ha utilizado ampliamente en múltiples proyectos, como Apache Software Foundation, Free Pascal, MediaWiki y Google.

CVS utiliza la arquitectura del servidor cliente: esto significa que un servidor almacena una versión actual (o versiones) de un proyecto en particular, además de guardar su historial. Luego, el cliente se conecta al servidor como medio de "desproteger" una copia del proyecto que se ha completado antes de su conexión al servidor. El cliente puede entonces trabajar en esta copia del proyecto y luego verificar los cambios que ha realizado más adelante. Además de permitir que un cliente se registre en una copia de un determinado proyecto, CVS permite que varios clientes trabajen y se registren en el mismo proyecto al mismo tiempo. Los clientes podrán modificar los archivos dentro de su propia copia de trabajo del proyecto y enviar estas modificaciones al servidor.

Las confirmaciones de subversión, es decir, crean un conjunto de cambios tentativos y los hacen permanentes, como operaciones atómicas verdaderas (o una serie de operaciones de datos en las que ocurre todo o ocurre nada). Subversion también permite a los usuarios cambiar el nombre, copiar, mover y / o eliminar archivos; Sin embargo, esos archivos mantendrán su historial de revisión completo. Este sistema utiliza resultados analizables, diseño de biblioteca en capas de cliente / servidor de forma nativa y ramificación y etiquetado como operaciones baratas (independientemente del tamaño del archivo). Hay enlaces de idioma para PHP, Python, Perl y Java. La subversión también cuesta según el tamaño del cambio y no el tamaño de los datos.

CVS puede mantener diferentes ramas de un proyecto, es decir, diferentes aspectos o permutaciones del mismo proyecto pueden derivarse del proyecto de origen y CVS mantendrá todas las versiones (una versión publicada del proyecto forma una rama para corregir errores, mientras que una versión diferente que se está desarrollando actualmente puede contener nuevas características y cambios importantes y formar una rama del mismo proyecto, por ejemplo).

Resumen: 1. CVS permite que múltiples usuarios colaboren en el mismo proyecto; Subversion mantiene las versiones actuales y anteriores de los archivos. 2. CVS permite a los usuarios registrarse en el mismo proyecto y modificarlo; La subversión se compromete como verdaderas operaciones atómicas. 3. CVS puede mantener diferentes ramas de un proyecto; Subversion usa salida analizable.