Control de versiones

Hola de nuevo! Tras un largo parón, vuelvo a la carga con energías renovadas!

Y como vuelvo a programar en casa, lo primero que he querido hacer es montarme un sistema de control de versiones de mi código, ya que me he acostumbrado a utilizarlo en el trabajo y me parece increíblemente útil.

Allí usaba principalmente CVS integrado en el Eclipse, pero nunca tuve que preocuparme del servidor o de crear nuevos proyectos. Ahora que he intentado hacerlo todo desde cero, me he encontrado con múltiples problemas. La máquina que uso para programar es un MacBook, pero quiero tener el repositorio en otro lugar, por si el portátil muere o si tengo que dejarlo encendido varios días seguidos.

El caso es que mi otro ordenador es un vetusto Pentium 4 con Windosw XP, y tras unos días de búsqueda, no ha habido manera de encontrar un buen servidor CVS gratuito para Windows. ¿No existe nada? La verdad es que ya no lo necesito, pero tengo curiosidad…

La segunda opción fue crear una máquina virtual con un Linux, y tener ahí el servidor. Pero tras instalar la máquina virtual y lanzarla, quedó claro que la opción era inviable, más que nada por la lentitud. El giga de RAM no da para más…

Viendo que montar un CVS se estaba complicando, me dio por echarle un vistazo a Subversion (SVN). Lo utilicé de manera muy esporádica en un proyecto anterior, y recuerdo que cuando lo comenté con mi anterior jefe, me hablo de sus virtudes situándolo como una opción superior a CVS.

Me puse a buscar un servidor de SVN gratuito para Windows y lo encontré rápidamente. Se trata de VisualSVN. Está disponible en dos versiones, pero la versión gratuita está muy completa, ofreciendo la versión de pago unas pocas funcionalidades que no estoy interesado en utilizar.

La instalación es muy sencilla, y en apenas unos pocos minutos puedes tener un servidor SVN funcionando. Lo único que falta es configurar el Eclipse para que se conecte al servidor.

Al contrario que CVS, Eclipse no trae integrado SVN, pero hay un proyecto en incubación, llamado Subversive, que se encuentra en una avanzada fase de desarrollo y es completamente funcional.

  1. Instalarlo en Eclipse es tan sencillo como ir a Ayuda -> Instalar Nuevo Software…
  2. Del desplegable seleccionamos Helios – http://download.eclipse.org/releases/helios
  3. En ‘Colaboración’ seleccionamos las opciones relacionadas con Subversive, que suelen estar de las últimas.
  4. Continuamos con la instalación como con cualquier otro componente de Eclipse, y al finalizar pedirá reiniciar Eclipse.
  5. Al iniciarse, nos ofrecerá una lista de conectores para SVN. Los conectores a elegir dependerán de la versión de SVN que utilice nuestro servidor. En mi caso era la 1.6.12, por lo que elegí los conectores para la 1.6.x. Yo recomiendo instalar los dos que se ofrecen, el de código nativo (Native JavaHL) y el implementado en java (SVNKit).

En mi primer intento instalé únicamente el nativo y no hubo manera de hacerlo funcionar. Ahora estoy utilizando el SVNKit y sin problemas. En esta página tenéis una comparación de los pros y los contras de los conectores. En mi opinión SVNKit es a la larga una mejor opción.

Solo queda abrir la perspectiva de SVN y crear un repositorio, lo cual resulta bastante intuitivo y es muy similar a CVS.

Espero que os resulte útil, y confío en actualizar más frecuentemente el blog. Nos vemos!

[ACTUALIZACIÓN 11/02/2011]

Pues ya llevo unos meses usando Subversion y estoy encantado. No he notado que sea superior a CVS, pero la funcionalidad ha sido perfecta.

El otro día hice un tutorial de configuración de Subversive para un amigo y resulta que por unos problemas que han tenido con las versiones, la instalación ya no es tan sencilla como antes. Lo pasaré a formato web y lo colgaré para quien lo necesite 馃檪

[ACTUALIZACIÓN 10/10/2011]

Me instale la última versión de Eclipse (Indigo) y la instalación de Subversive fue sin problemas, por lo que parece que ya está solucionado lo que comentaba en la última actualización.