Tiro monedas al aire, pero hasta ahora nunca las pude agarrar.

Logo de Subversion

Como estoy haciendo un proyecto en mi casa, necesitaba tener todo centralizado porque utilizo varias PCs. La mejor forma es tenerlo todo en un repositorio SVN. Manos a la obra.

OBS:

  • Ser root.

Entramos y escribimos en la consola:
aptitude update
aptitude install subversion

Escribimos en la consola:
mkdir /var/subversion

Ahora nos toca crear Repositorios para cada uno de nuestros proyectos donde estarán alojados nuestro código fuente, recursos, etc. Vamos a crear un proyecto que se llame proyectosbeta_prueba1.

Volvemos a escribimos en la consola:
svnadmin create /var/subversion/proyectosbeta_prueba1

Debemos arrancar el servicio SVN, ya que tenemos al menos un repositorio (proyectosbeta_prueba1), para poder acceder desde eclipse, aptana, netbeans, etc. Esto nos permitirá levantar el servicio svn de todos nuestros repositorios:
svnserve -d -r /var/subversion/

Configuración Básica de Acceso al SVN
Archivos a tener en cuenta:

  •  /var/subversion/proyectosbeta_prueba1/conf/svnserve.conf = Configuración general del Svn, con esta configuración estamos diciendo que:
    • Los accesos anónimos no los permitimos.
    • Los usuarios autenticados tienen permisos de lectura y escritura.
    • El archivo de la base de datos de passwords es passwd (/var/subversion/proyectosbeta_prueba1/conf/passwd).

Volvemos a escribimos en la consola:
nano /var/subversion/proyectosbeta_prueba1/conf/svnserve.conf

Cambiamos:
[General] //debe quedar con estas lineas en el mismo orden
anon-access = none
auth-access = read
auth-access = write
password-db = passwd

Guardamos el archivo (Control + o) y salimos (Control + x).

Ahora que ya tenemos la configuración básica del svn, vamos a darle acceso a algún usuario, en este caso al usuario: josego con la clave: 123456

Volvemos a escribimos en la consola:
nano /var/subversion/proyectosbeta_prueba1/conf/passwd

Agregamos:
[users]
josego = 123456

Guardamos el archivo (Control + o) y salimos (Control + x).

Ahora ya tenemos un servidor SVN con una configuración básica de autenticación de usuario.

Para saber la información de nuestro servidor SVN, entramos a la consola y escribimos:
svn info svn://127.0.0.1/proyectosbeta_prueba1

Por pantalla me sale:
Ruta: proyectosbeta_prueba1
URL: svn://127.0.0.1/proyectosbeta_prueba1
Raíz del repositorio: svn://127.0.0.1/proyectosbeta_prueba1
UUID del repositorio: 5a1aa5b2-7ae4-446b-93b6-ede655008672
Revisión: 0
Tipo de nodo: directorio
Revisión del último cambio: 0
Fecha de último cambio: 2012-12-01 12:24:26 -0300 (sáb 01 de dic de 2012)

Esto nos da la información de nuestro repositorio de ejemplo (proyectosbeta_prueba1).

Ahora volvemos a entrar a la consola para crear una copia de nuestro repositorio recién creado (proyectosbeta).
svn checkout svn://127.0.0.1/proyectosbeta_prueba1 /var/www/pruebaSVN

Y sale esto por pantalla:
Revisión obtenida: 0

Ahora creamos un archivo de prueba y lo comiteamos.
Volvemos a escribir en la consola:
cd pruebaSVN/
nano prueba1.txt

Escribimos lo siguiente a modo de ejemplo:
Hola soy un ejemplo.

Guardamos el archivo (Control + o) y salimos (Control + x).

Volvemos a escribir en la consola:
svn add prueba1.txt

Sale esto por pantalla:
A         prueba1.txt

Y ahora lo comiteamos. Escribimos en la consola:
svn commit -m "Primer Commit"

Sale esto por pantalla:
Añadiendo      prueba1.txt
Transmitiendo contenido de archivos .
Commit de la revisión 1.

Ahora podremos acceder al servicio local o remotamente desde eclipse, netbeans, aptana, etc.
svn://127.0.0.1/proyectosbeta_prueba1

OBS:

  • Este acceso es local, puedes sustituir 127.0.0.1 por la ip de tu servidor o nombre de dominio.

Y ahora ya podrán tener su propio servidor SVN en su casa. 🙂

Fuente 1: CristaLab
Fuente 2: Exodica Blog


Comments

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *