Site Meter

0. Introducción

Hace poquito adquirí un nuevo hosting con la posibilidad de acceso con SSH. Lo primero que se me ocurrió fue probar si podría instalar Subversion para poder administrar mis programas y colaborar con más gente en éstos. Durante este tutorial aprenderemos a instalar Subversion en un hosting compartido (es decir, los que la mayoría de las personas se compra para uso individual) y WebSVN, que es un gestor de Subversion vía web. Para poder seguir este tutorial deberemos tener un hosting Linux y acceso a una cuenta mediante SSH. Durante el tutorial veremos los siguientes puntos:

  1. Compilando e instalando Subversion en el hosting
  2. Creando la carpeta del repositorio e iniciando Subversion
  3. Creando un proyecto de prueba
  4. Instalando WebSVN para acceder a Subversion vía web
  5. Accediendo a nuestro repositorio remotamente
  6. Cuales son las direcciones y usuarios para un servidor 1&1

El resultado de esta ardúa tarea podría ser como el siguiente: http://websvn.eridem.net

NOTA: Este tutorial sigue los pasos para instalar los programas en un hosting de la compañía 1&1. Es posible que en tu hosting no tengas los programas, accesos o librerías para compilarlo y ejecutarlo.

1. Compilando e instalando Subversion en el hosting

Lo primero que deberemos hacer es entrar en nuestra cuenta mediante SSH. Los datos de tu usuario y contraseña te los debe proporcionar la empresa. Imaginemos que el usuario es “user” y la contraseña es “pass” y la máquina dónde esta nuestro espacio es “host”. Ejecutaremos en consola:

  1. ssh user@host

Cuando nos pida la contraseña, escribiremos “pass” para poder entrar. Una vez que estamos en nuestra cuenta, nos descargaremos las fuentes de Subversion (comprobar en la web la versión actual) y las descomprimiremos:

  1. wget http://subversion.tigris.org/downloads/subversion-1.5.4.tar.bz2
  2. tar jvxf subversion-*
  3. rm subversion-*.bz2
  4. cd subversion-*

Lo siguiente será compilarlo e instalarlo. Para poder instalarlo, lo instalaremos en nuestra carpeta $HOME:

  1. ./configure –prefix=$HOME
  2. make
  3. make install

Ahora añadiremos la dirección de la instalación de Subversion a la variable de entorno $PATH para que sea accesible desde cualquier lugar y así ejecutar sus programas:

  1. cd ~
  2. vi .bashrc

Añadiremos las siguientes lineas en el editor de texto:

  1. PATH=$PATH:$HOME/bin
  2. export PATH

Guardamos y cerramos el editor.

2. Creando la carpeta del repositorio e iniciando Subversion

Lo que haremos a continuación será crear una carpeta dónde meteremos todos nuestros proyectos e indicaremos a Subversion que ese será nuestra carpeta de repositorios. La carpeta podrá ser cualquiera, pero recomiento que esté dentro de la carpeta de nuestro home. Así pues, en este tutorial crearemos una carpeta llamada “projects”:

  1. cd ~
  2. mkdir projects
  3. cd projects
  4. svnserve -d -r .

3. Creando un proyecto de prueba

Más adelante escribiré un tutorial básico de como usar Subversión. Ahora, lo único que necesitamos, será crear un nuevo proyecto en nuestro repositorio y añadir algún archivo.

Primero crearemos un proyecto cualquiera en nuestra carpeta de usuario. Por ejemplo, crearemos un proyecto que tenga un archivo “hola.txt” con el contenido “hola”:

  1. cd ~
  2. mkdir prueba
  3. cd prueba
  4. echo “hola” > hola.txt

Ahora crearemos un repositorio para nuestro proyecto en Subversion y subiremos el que acabamos de crear como version 1.

  1. cd ~/projects
  2. svnadmin create prueba
  3. svn import $HOME/prueba file://$HOME/projects/prueba -m “Version inicial”

Como podemos ver, hemos creado un proyecto en nuestro repositorio llamado “prueba” y le hemos enviado una nueva copia de nuestro proyecto para que la tome como proyecto principal.

4. Instalando WebSVN para acceder a Subversion vía web

Desde nuestro navegador, nos descargaremos la última versión de WebSVN desde su página oficial:

http://websvn.tigris.org/servlets/ProjectDocumentList

lo descomprimiremos y editaremos el archivo “/include/distconfig.php”, el cual cambiaremos las siguientes líneas:

  1. // $config->setSVNCommandPath(’Path/to/svn and svnlook/ e.g. c:\program files\subversion\bin’);
  2. // $config->setDiffPath(’Path/to/diff/command/’);
  3. // $config->setSedPath(’Path/to/sed/command/’);
  4. // $config->setTarPath(’Path/to/tar/command/’);
  5. // $config->setGZipPath(’Path/to/gzip/command/’);
  6. // $config->parentPath(’Path/to/parent (e.g. c:\svn)’);

Por estas otras:

  1. $config->setSVNCommandPath(‘/direccionDeTuHome/bin/’);
  2. $config->setDiffPath(‘/usr/bin/’);
  3. $config->setSedPath(‘/bin/’);
  4. $config->setTarPath(‘/bin/’);
  5. $config->setGZipPath(‘/bin/’);
  6. $config->parentPath(‘/direccionDeTuHome/projects/’);

Como podemos ver, hemos quitado las líneas de comentarios al principio de las instrucciones y hemos asignado las rutas de los programas que utilizará. Hay que fijarse bien de poner la dirección de tu carpeta de usuario correctamente, ya que en este caso yo no he puesto nada porque no puedo saber esa dirección (lo que está en negrita es lo que debes cambiar).

Una vez cambiada la configuración del archivo lo renombraremos el archivo “distconfig.php” a “config.php” y lo subiremos a nuestro hosting. Ahora ya tendréis un gestor de SVN visual y vía web.

5. Accediendo a nuestro repositorio remotamente

Una vez que tenemos nuestro Subversion instalado y hemos creado un proyecto de prueba, podremos acceder a éste usando SSH.

Para bajarse la última versión de nuestro proyecto “prueba”, entraremos en consola y escribiremos:

  1. svn co svn+ssh://usuario@host/direccionDeTuHome/projects/prueba

De esta forma, nos aparecerá una carpeta con la última copia del proyecto en nuestro ordenador. Los demás comandos que se pueden utilizar en Subversion, como la actualización, se hará con sus respectivos comandos, pero lo importante aquí era saber la URL de nuestro repositorio.

6. Cuales son las direcciones y usuarios para un servidor 1&1

Esto está fuera de lugar en este tutorial genérico para cualquier tipo de hosting. Pero si has entrado en este post porque tienes un hosting 1&1 y quieres montarlo ahí, te daré las direcciones del HOME y el usuario que debes poner.

La dirección para entrar en un repositorio creado en la carpeta “projects” de tu Home mediante subversión será:

  1. svn+ssh://tuUsuario:elNombreDeDominioQueTeDanPorDefecto/kunden/homepages/xx/xxxxxxxxxx/htdocs/projects/tuProyecto

Así pues, en un ejemplo real como el mío, mi dirección es:

  1. svn+ssh://u47339777@eridem.net/kunden/homepages/6/d226538314/htdocs/projects/XMLTraceAdministrator

El software libre ofrece multitud de ventajas sobre el software propietario, aunque posiblemente la que más acerca para que una empresa apueste por ella es el bajo (o gratuito) coste que implica usar herramientas libres. Aunque también existe un pequeño miedo por parte de empresas por el desconocimiento de éste.

La Generalitat Valenciana ha creado un proyecto llamado SourcePYME para promover el software libre y liberar así a las empresas de la desconfianza. Podemos encontrar un libro en formato electrónico que describe como puede migrar una empresa al software libre sin fallar en el intento y como dice en su libro “tener una guía de buenas prácticas”. El libro puede descargarse de la siguiente dirección:

https://discovirtual.aimme.es/docs/sourcepyme07/migracionalsoftwarelibre.pdf

Y es una lectura muy recomendada tanto para personas con limitado dinero que quieran montar un nueva empresa, como para empresas que quieran bajar su presupuesto en software sin perder funcionabilidad ni ganancias. Aunque… como digo siempre, el libro es recomendado para todos aquellos que tengan pasión por la informática. Una de las partes más interesantes a nivel usuario (si no estás montando una empresa actualmente) es leer la lista de programas recomendados para todo tipo de actividades: Apache, OpenOffice, OpenWengo, Gimp, FreeCAD, etc…

La página oficial de SourcePYME: http://www.sourcepyme.org


© 2009 El blog de ERiDeM | ERiDeM.net | XHTML CSS RSS | Contenido disponible bajo Creative Commons Reconocimiento 2.5