Una alternativa al uso de CVS an�nimo para recuperar el �rbol fuente de Postgres es CVSup. CVSup fu� desarrollado por John Polstra para distribuir repositorios CVS y otro �rboles de ficheros para El proyecto FreeBSD.
Una ventaja importante de utilizar CVSup es que puede replicar de forma eficaz el repositorio entero en su sistema local, permitiendo un acceso local r�pido a las operaciones de cvs como log y diff. Otras ventajas incluyen sincronizaci�n r�pida al servidor de Postgres debido a un eficiente protocolo de transferencia de cadenas que s�lo env�a los cambios desde la �ltima actualizaci�n.
Se requieren dos �reas para que CVSup pueda hacer su trabajo: un repositorio local de CVS (o simplemente un �rea de directorios si usted est� tomando una foto fija (snapshot) en lugar de un repositorio; vea m�s abajo) y �rea local de anotaciones de CVSup. Estas dos �reas pueden coexistir en el mismo �rbol de directorios.
Decida donde quiere usted conservar su copia local del repositorio CVS. En uno de nuestros sistemas, recientemente hemos instalado un repositorio en /home/cvs/, pero anteriormente lo ten�amos bajo un �rbol de desarrollo de Postgres en /opt/postgres/cvs/. Si desea usted mantener su repositorio en /home/cvs/, incluya
setenv CVSROOT /home/cvs |
Se debe inicializar el �rea del repositorio de cvs. Una vez que se fija CVSROOT, se puede hacer esto con un �nico comando:
$ cvs init |
$ ls $CVSROOT CVSROOT/ |
Verifique que cvsup se encuentra en su path; en la mayor�a de los sistemas, puede usted hacer esto tecleando
which cvsup |
$ cvsup -L 2 postgres.cvsup |
Aqu� le mostramos un ficheros de configuraci�n de CVSup modificado para una instalaci�n espec�fica, y que mantiene un repositorio CVS local completo: (N. del T: voy a traducir los comentarios a modo de documentaci�n del fichero. Obviamente, no traducir� los comandos, lo que puede dar una imagen algo complicada, pero me parece que puede valer la pena. Agradeceremos sus comentarios a doc-postgresql-es@hispalinux.es)
# Este fichero representa el fichero de distribuci�n estandar de CVSup # para el proyecto de ORDBMS PostgreSQL. # Modificado por lockhart@alumni.caltech.edu 1997-08-28 # - Apunta a mi foto fija local del �rbol fuente. # - Recupera el repositorio CVS completo, y no s�lo la �ltima actualizaci�n. # # Valores de defecto que se aplican a todas las recolecciones. *default host=postgresql.org *default compress *default release=cvs *default delete use-rel-suffix # activar la l�nea siguiente para tomar la �ltima actualizaci�n. #*default tag=. # activar la l�nea siguiente para tomar todo lo que se ha especificado antes # o por defecto en la fecha especificada a continuaci�n. #*default date=97.08.29.00.00.00 # el directorio base apunta a donde CVSup almacenar� sus ficheros de marcas. # crear� un subdirectorio sup/ #*default base=/opt/postgres # /usr/local/pgsql *default base=/home/cvs # el directorio prefijo apunta a donde CVSup almacenar� la/s distribuci�n/es actuales. *default prefix=/home/cvs # la distribuci�n completa, incluyendo todo lo siguiente. pgsql # distribuciones individuales contra 'el paquete completo' # pgsql-doc # pgsql-perl5 # pgsql-src |
El siguiente fichero de configuraci�n de CVSup se sugiere en el servidor ftp de Postgres y descargar� �nicamente la foto fija actual:
# Este fichero representa el fichero de distribuci�n estandar de CVSup # para el proyecto de ORDBMS PostgreSQL. # # Valores de defecto que se aplican a todas las recolecciones, a todas las descargas. *default host=postgresql.org *default compress *default release=cvs *default delete use-rel-suffix *default tag=. # el directorio base apunta a donde CVSup almacenar� sus ficheros de marcas. *default base=/usr/local/pgsql # el directorio prefijo apunta a dnde CVSup almacenar� las distribuciones actuales. *default prefix=/usr/local/pgsql # distribuci�n completa, incluyendo todo lo siguiente. pgsql # distribuciones individuales contra 'el paquete completo' # pgsql-doc # pgsql-perl5 # pgsql-src |
CVSup se puede adquirir como ficheros fuentes, binarios preconstruidos o RPM,s de Linux. Es mucho m�s facil utilizar un binario que construirlo a partir de los fuentes, principalmente porque el compilador Modula-3, muy capaz pero tambi�n muy voluminoso, se necesita para la construcci�n.
Instalaci�n a partir de Binarios de CVSup
Puede usted utilizar los binarios si tiene una plataforma para la que los binarios se hayan remitido al servidor ftp de Postgres, o si est� usted utilizando FreeBSD, para el que CVSup est� disponible como una adaptaci�n (porting).
CVSup fue desarrollado originariamente como una herramienta para la distribuci�n del �rbol fuente de FreeBSD. Est� disponible como una adaptaci�n, y para aquellos que utilizan FreeBSD, si esto no es suficiente para decirles como obtenerlo e instalarlo, les agradeceremos que nos aporten un procedimiento eficaz. |
En el momento de escribir, se disponen binarios para Alpha/Tru64, ix86/xBSD, HPPA/HPUX-10.20, MIPS/irix, ix86/linux-libc5, ix86/linux-glibc, Sparc/Solaris, and Sparc/SunOS.
Adquiera el fichero tar con los binarios para cvsup (cvsupd no se requiere para ser un cliente) adecuado para su plataforma.
Si utiliza usted FreeBSD, instale la adaptaci�n de CVSup.
Si tiene usted otra plataforma, localice y descargue los binarios apropiados desde el servidor ftp de Postgres.
Compruebe el fichero tar para verificar el contenido y la estructura de directorios, si la hay. Al menos para el fichero tar de linux, los binarios est�ticos y las p�ginas man se incluyen sin ning�n empaquetado de directorios.
Si el binario se encuentra en el nivel superior del fichero tar, simplemente desempaquete el fichero tar en su directorio elegido:
$ cd /usr/local/bin $ tar zxvf /usr/local/src/cvsup-16.0-linux-i386.tar.gz $ mv cvsup.1 ../doc/man/man1/ |
Si hay una estructura de directorios en el fichero tar, desempaquete el fichero tar en /usr/local/src, y mueva los binarios a la direcci�n adecuada como antes.
Aseg�rese de que los nuevos binarios se encuentran en su path.
$ rehash $ which cvsup $ set path=(path a cvsup $path) $ which cvsup /usr/local/bin/cvsup |
La instalaci�n a partir de los fuentes de CVSup no es totalmente trivial, principalmente porque la mayor�a de sistemas necesitar�n antes el compilador Modula�3. Este compilador se encuentra disponible como RPM de Linux, como paquete FreeBSD, o como c�digo fuente.
Una instalaci�n limpia de Modula-3 se lleva aproximadamente 200 MB de espacio en disco, de los que se pueden recuperar unos 50 MB cuando se borren los fuentes. |
Instalaci�n en Linux
Instale Modula-3.
Tome la distribuci�n de Modula-3 desde Polytechnique Montr�al, quien mantiene activamente el c�digo base originalmente desarrollado por the DEC Systems Research Center. La distribuci�n RPM "PM3" est� comprimida aproximadamente unos 30 MB. En el momento de escribir, la versi�n 1.1.10-1 se instalaba l�mpiamente en RH-5.2, mientras que la 1.1.11-1 estaba constru�da aparentemente para otra versi�n (�RH-6.0?) y no corr�a en RH-5.2.
Este empaquetado rpm particular tiene muchos ficheros RPM, de modo que seguramente quiera usted situarlos en un directorio aparte. |
Instale los rpms de Modula-3:
# rpm -Uvh pm3*.rpm |
Desempaquete la distribuci�n de cvsup:
# cd /usr/local/src # tar zxf cvsup-16.0.tar.gz |
Construya la distribuci�n de cvsup, suprimiento la interface gr�fica para evitar la necesidad de las librer�as X11:
# make M3FLAGS="-DNOGUI" |
# make M3FLAGS="-DNOGUI -DSTATIC" |
Instale el binario construido:
# make M3FLAGS="-DNOGUI -DSTATIC" install |