Puede usar CVS a diario para su programa, pero nunca toque la parte de colaboración. De hecho, esa es la parte más emocionante. En este tutorial, primero explicaré brevemente los conceptos de troncal, rama y etiquetas. Y luego use un ejemplo real de colaboración en equipo para demostrar cómo funciona cvs.
¿Cómo funciona CVS?
En primer lugar, debemos comprender qué son el tronco, la rama y las etiquetas.
Trunk es la versión principal de un proyecto. Hay un solo tronco para cada repositorio de CVS.
La rama puede ser múltiple, es decir, cualquier desarrollador autorizado puede crear una rama y trabajar en la rama.
Las etiquetas se utilizan para etiquetar varios archivos en diferentes versiones. (Por ejemplo, en el proyecto siguiente, Main.java se cambia con frecuencia, pero Dog.java no cambia) Al usar una etiqueta, podemos marcar archivos en diferentes versiones en una etiqueta.
Un ejemplo de colaboración en Eclipse
En este ejemplo, Mike creó un proyecto bajo eclipse y luego lo compartió en el repositorio de CVS. (Clic derecho -> Equipo -> Compartir proyecto)
Entonces Alice verificó el proyecto usando un nombre de proyecto diferente («CollaborationBranch»), y creó una rama en «CollaborationBranch» haciendo clic derecho-> Equipo-> Rama y nombrando la nueva rama como Col_1_1.
Ahora Mike trabaja en el tronco y Alice trabaja en la rama. Cada vez que Mike y Alice confirman un cambio, el cambio se confirmará en su propia Troncal / Rama. No hay interferencia entre esas dos versiones. El tronco y la rama son totalmente independientes.
Después de un tiempo, Alice quiere fusionar algunos cambios que Mike ha realizado en el tronco. Porque el tronco puede cambiar algo relevante para su propia rama. Por lo tanto, es una buena idea que Mike etiquete la versión actual, para que Alice pueda saber qué versión fusionar solo con mirar la etiqueta. Entonces Mike crea una etiqueta llamada «Tag_1_2». (haga clic con el botón derecho en el proyecto -> Equipo -> Etiquetar como versión) El nombre de la etiqueta significa que el tronco está en la versión 1.2.
Ahora Alice puede fusionar los cambios realizados en el tronco (haga clic con el botón derecho en el proyecto -> Equipo -> Fusionar) y obtendrá la siguiente ventana.
End Tag es la etiqueta que desea fusionar, es decir, Tag_1_2 que es creada por Mike.
La etiqueta de inicio es la raíz común para el tronco y la rama, donde se crea la rama originalmente.
Luego, Eclipse mostrará la siguiente ventana para comparar y fusionar.
Ahora Alice entiende lo que Mike ha hecho con Trunk. Ambos continúan trabajando de manera independiente nuevamente.
Finalmente, todas las ramas deben fusionarse con el Trunk, ya que normalmente solo hay una versión final de un proyecto. Así que ahora Mike tiene que fusionar lo que Alice le ha hecho al Tronco principal. Con el mismo enfoque, Mike usa la siguiente ventana de comparación para fusionar y cambiar de sucursal.