"El depósito" es la zona donde se encuentran documentos maestros del proyecto sobre el que se efectuará Control de Cambios ("CVS"), este depósito facilita la generación de versiones en cualquier punto en el tiempo. A partir de este depósito se genera lo que son denominados copias de trabajo ("Working Copies") . Cada usuario que participa en el Proyecto genera una copia de trabajo ("Working copy") sobre el cual ejecuta cambios, una vez que estos cambios sean significativos o finales, cada usuario registra sus cambios en "El Depósito".
Todo depósito se encuentra dividido en dos partes, el siguiente esquema muestra un depósito que se encuentra bajo un directorio /usr/local/cvsroot.
/usr | +--local | | | +--cvsroot | | | | | +--CVSROOT | (archivos administrativos) | +--www | | | +--aplicaciones | | (directorio con documentacion | | de aplicaciones) | | | +--graficas | | (directorio de graficas ) | | | +--css | (directorio de cascading style sheets) | +--aolserver | +--config | | +--osmosislatina.tcl,v +--osmosisstatico.tcl,v +--antiguos | | | | | +--conexion.1,v | | +--beta | | +--osmosis.tcl,v +--osmosis2.tcl,v |
CVSROOT
: Contiene todos los archivos administrativos
de CVS. www
: Contiene los directorios y documentos de un sitio de Internet. aolserver
: Contiene archivos y directorios de configuración para AOLserverNOTA:Para todo comando que se ejecute bajo CVS es necesario especificar la ubicación del "Depósito", esto se puede hacer mediante la variable ambientalCVSROOT
, o bien con el parámetro-d
al ejecutar el comando.(Considerando el ejemplo anterior, la ubicación del depósito es:/usr/local/cvsroot
).
Para crear el directorio administrativo CVSROOT
se utiliza el comando init
.Su ejecución:
|
Generalmente ya existen proyectos que pueden entrar bajo el control de CVS, para realizar esta transferencia se utiliza el comando import
.La manera más clara de presentar su uso es mediante un ejemplo.
Suponiendo que los documentos que requerimos entren bajo control de CVS se encuentran en el directorio /servidor_web/osmosis/
:
|
El parámetro indicado con -m
se refiere al comentario que aparecerá en este directorio del depósito ( "Primera Version de Páginas Web"
), www
es el nombre del subdirectorio que aparecerá en el "Depósito", la palabra osmosislatina
indica el vendedor del material, y version_unica
es la versión inicial ("release tag").Si el comando es ejecutado exitosamente TODOS los archivos y directorios que se encontraban en /servidor_web/osmosis/
, serán copiados a /usr/local/cvsroot/www
, se recomienda que los archivos de /servidor_web/osmosis/
sean eliminados para evitar confusiones. Nota: Recuerde que este comando asume que la variable CVSROOT
ha sido definida,de no ser así lo debe especificar mediante el parámetro -d
.
Como ya se mencionó, dentro de este subdirectorio del depósito (/usr/local/cvsroot/www
) están los subdirectorios que se encontraban en /servidor_web/osmosis/
. Sin embargo, estos archivos ahora presentan un formato diferente, cada archivo termina con una ,v
y contiene la suficiente información para regenerar cualquier versión del archivo. Se recomienda que estos archivos no sean modificados directamente ya que contienen información critica para el funcionamiento de CVS.
Debido a que de estos archivos serán generados los copias de trabajo ("Working Copies") , se recomienda crear grupos de Unix para facilitar el acceso a los archivos, de tal manera que cada directorio y archivo pertenezcan a un grupo con privilegios de lectura y modificación.
Al ejecutar el comando init
se genera el directorio CVSROOT
que contiene varios archivos administrativos, uno de los más importantes es :
'modules' : Un modulo es una manera simplificada de nombrar varios subdirectorios en el depósito, de tal manera que al tiempo de hacer un copia de trabajo ("Working Copy") no sea necesario especificar varios subdirectorios sino sea posible hacerlo mediante un solo nombre,a continuación un ejemplo del archivo.
CVSROOT CVSROOT modules CVSROOT modules Internet www Servidor_Web aolserver TODO www aolserver |
Todas las lineas de este archivo son relativas a la ubicación de $CVSROOT (en este caso /usr/local/cvsroot).Mayor información sobre módulos en copias de trabajo ("Working Copies") .