12.1.2 Sesiones CVS de ejemplo
Lo siguiente configurar� el int�rprete de comandos para acceso al repositorio
CVS.
12.1.2.1 CVS an�nimo (�nicamente para descargar)
Acceso de s�lo lectura:
$ export
CVSROOT=:pserver:[email protected]:/cvsroot/qref
$ cvs login
$ cvs -z3 co qref
12.1.2.2 Uso del servidor CVS local
Acceso local desde el int�rprete de comandos en la misma m�quina:
$ export CVSROOT=/var/lib/cvs
12.1.2.3 Uso del pserver en un CVS remoto
Acceso remoto sin SSH (uso del protocolo RSH en el cvs
)
$ export CVSROOT=:pserver:[email protected]:/var/lib/cvs
$ cvs login
Propenso a ataques esp�as.
12.1.2.4 Uso de un CVS remoto mediante ssh
Acceso remoto con SSH:
$ export CVSROOT=:ext:[email protected]:/var/lib/cvs
o para SourceForge:
$ export CVSROOT=:ext:[email protected]:/cvsroot/qref
Tambi�n puede utilizar la autenticaci�n RSA (Conectarse con pocas contrase�as, Secci�n
9.5.3), que evita la solicitud de la contrase�a.
12.1.2.5 Crear un archivo CVS nuevo
Para,
ITEM VALOR SIGNIFICADO
�rbol del proyecto: ~/proyecto-x Todos los archivos fuente
Nombre del proyecto: proyecto-x Nombre para este proyecto
Nombre del proveedor: Rama-principal Etiqueta para toda la rama
Etiqueta de versi�n: Versi�n-inicial Etiqueta para una versi�n
espec�fica
Entonces,
$ cd ~/proyecto-x # para entrar en el directorio del proyecto
... crear un �rbol ...
$ cvs import -m "Comienzo del proyecto-x" proyecto-x Rama-principal Versi�n-inicial
$ cd ..; rm -R ~/proyecto-x
12.1.2.6 Trabajando con CVS
Para recordar y trabajar con los fuentes locales del proyecto-x en
un archivo CVS:
$ cd # para ubicarse en la zona de trabajo.
$ cvs co proyecto-x # copia los fuentes del repositorio CVS
# a la m�quina local
$ cd proyecto-x
... efectuar los cambios ...
$ cvs diff -u # similar a diff -u repository/ local/
$ cvs ci -m "Describir cambio" # guarda los fuentes locales en el CVS
$ vi archivo_nuevo
$ cvs add archivo_nuevo
$ cvs ci -m "Se a�adi� archivo_nuevo"
$ cvs up # actualiza a la �ltima versi�n del CVS
... cuidado con las l�neas que comienzan con "C nombre_archivo"
... el c�digo sin modificar se renombra como `.#nombre_archivo.version'.
... Busque "<<<<<<<" y ">>>>>>>" en
nombre_archivo.
$ cvs tag Release-1 # a�ade etiqueta de versi�n
... hacer otras modificaciones ...
$ cvs tag -d Release-1 # elimina etiqueta de versi�n
$ cvs ci -m "otros comentarios"
$ cvs tag Release-1 # vuelve a a�adir la etiqueta de versi�n
$ cd # para volver al �rea de trabajo.
$ cvs co -r Versi�n-inicial -d antiguo proyecto-x
... obtiene la versi�n original y la ubica en el directorio 'antiguo'
$ cd antiguo
$ cvs tag -b Versi�n-inicial-modif # crea la etiqueta de la rama (-b)
... ahora puede trabajar sobre la versi�n original (Etiqueta=sticky)
$ cvs update -d -P # no crea directorios vac�os
... el �rbol de fuentes tiene ahora la etiqueta sticky "Versi�n-inicial-modif"
... trabaje en esta rama
$ cvs up -d -P # sicroniza los cambios en la rama con el resto
$ cvs ci -m "verificaci�n hecha en la rama"
$ cvs update -kk -A -d -P
... elimina la etiqueta sticky y descarta el contenido
... actualiza desde el tronco principal sin reemplazar palabras claves
$ cvs update -kk -d -P -j Versi�n-inicial-modif
... A�ade rama Versi�n-inicial-modif en el tronco
principal
... sin el reemplazo de palabras claves. Solucionar confictos con el editor.
$ cvs ci -m "Creaci�n Versi�n-inicial-modif"
$ cd
$ tar -cvzf antiguo-proyecto-x.tar.gz antiguo # crear
archivo, -j para bz2
$ cvs release -d antiguo # eliminar fuentes locales (opcional)
-n no ejecuta ning�n comando que cambie el disco
-t muestra los mensajes de la actividad en el cvs
12.1.2.7 Exportar archivos desde el CVS
Para conseguir la �ltima versi�n del CVS use "tomorrow":
$ cvs ex -D tomorrow nombre_m�dulo
12.1.2.8 Administrar el CVS
A�adir un alias al proyecto (servidor local):
$ su - admin # un miembro del equipo
$ export CVSROOT=/var/lib/cvs
$ cvs co CVSROOT/modules
$ cd CVSROOT
$ echo "px -a proyecto-x" >>modules
$ cvs ci -m "Ahora px es un alias del proyecto-x"
$ cvs release -d .
$ exit # o control-D para salir de 'su'
$ cvs co -d proyecto px
... proyecto-x (alias:px) del CVS al directorio proyecto
$ cd proyecto
... realizar cambios ...