Copia de Trabajo ("Working Copy") en CVS

Copia de Trabajo ("Working Copy")

Cada usuario que se encuentre trabajando sobre un proyecto en CVS, necesita generar un Copia de Trabajo ("Working Copy") de los archivos del Depósito, es sobre esta copia que realiza cambios al cualquier documento.

Como crear una Copia de Trabajo ("Working Copy")

Un working copy puede ser creado a partir de cualquier depósito en CVS y su creación se realiza con el comando checkout , las únicas limitaciones para generar un working copy son acceso (privilegios) a los documentos del depósito y que la versión de CVS realizando el checkout sea la misma del depósito, al igual que la creación del depósito , la variable CVSROOT o parámetro -d especifica la ubicación del depósito.

 osmosis# cvs -d des.osmosislatina.com:/usr/local/cvsroot checkout www 
 
                             "o" 
 
 osmosis# cvs checkout www 
  ( si la variable ambiental es 
    CVSROOT=des.osmosislatina.com:/usr/local/cvsroot )

Ambos comandos generan un working copy del depósito ubicado en el "Host" des.osmosislatina.com subdirectorio /usr/local/cvsroot donde el "working copy" es una copia del directorio www . Existen otras opciones que pueden ser especificadas ( Vea los links al inicio para mayores detalles).

Contenido de la Copia de Trabajo ("Working Copy")

Cada Copia de Trabajo ("Working Copy") genera una copia exacta del directorio que sea especificado en el comando checkout , en el caso anterior esto seria una copia del contenido de www y todos sus subdirectorios. A su vez, sobre cada directorio se genera un directorio que lleva control sobre los archivos,este es llamado CVS.

Cada directorio CVS que es generado contiene los siguiente archivos:

Módulos en CVS

En el subdirectorio administrativo (CVSROOT) existe un archivo llamado 'modules' , este archivo facilita la generación de una Copia de Trabajo ("Working Copy") mediante palabras claves. Si se observa el contenido de 'Modules' , su contenido por linea es al menos dos palabras. La linea "Internet www" indica que el subdirectorio www equivale a Internet , por lo tanto los comandos:

osmosis# cvs checkout www  
osmosis# cvs checkout Interent 

tienen el mismo efecto: producir una Copia de Trabajo ("Working Copy") a partir del directorio www del Depósito.

El punto más importante de 'Modules' es combinar varios grupos del depósito; la linea " TODO www aolserver " de 'Modules' ejemplifica esto, el comando

  osmosis# cvs checkout TODO 

genera una Copia de Trabajo ("Working Copy") con los subdirectorios www y aolserver del depósito.

Para modificar el contenido del archivo 'Modules' (al igual que cualquier otro archivo) es necesario crear una Copia de Trabajo ("Working Copy"), el comando:

 osmosis# cvs checkout CVSROOT/modules 

genera una Copia de Trabajo ("Working Copy") de ''Modules'. Una vez realizados los cambios a la copia de trabajo ("Working Copy") es necesario actualizar el depósito para que estos cambios puedan ser observados por los demás usuarios del sistema.

Como eliminar una Copia de Trabajo ("Working Copy")

Para eliminar una Copia de Trabajo ("Working Copy") se utiliza el comando release con el parámetro -d, , su ejecución sería la siguiente:

  osmosis# cvs release -d www 

Esto eliminaría el directorio www y todos sus subdirectorios de la Copia de Trabajo ("Working Copy"), cabe mencionar que si existen archivos que han cambiado o han sido agregados al "working copy" sin actualizarse en el Depósito, CVS indicará al usuario que existen algunos cambios que no han sido llevados al "Depósito", a partir de este punto el usuario puede optar por perder los cambios o actualizar el depósito con estos cambios.