Blogs

Mercurial en el Google Summer of Code

Una de las iniciativas que más me gusta de Google es su ya célebre Summer of Code. En la edición de este año, la cuarta, Mercurial participa con cuatro proyectos.

Partial Clone

Este es mi favorito. A día de hoy, con Mercurial no puedes hacer un clone (o checkout) de una parte del repositorio. Por ejemplo, no puedes traerte únicamente un directorio del repositorio. Algo que sí puede hacerse, por ejemplo, con Subversion.

Para grandes proyectos, esta es una limitación importante. Incluso a nosotros nos hubiera venido bien disponer de ella para uno de los proyectos en que nos encontramos inmersos actualmente.

Rebasing

Esta es otra funcionalidad interesante. Se trata de poder tomar una secuencia de revisiones y cambiarle el padre.

Como se explica en la solicitud del proyecto, puede ser aplicable en varios casos. Por ejemplo, un desarrollador que está trabajando en una rama local puede mantener sus parches actualizados con la principal moviéndolos "al final" de esta.

Mejora de las herramientas de conversión a Subversion

Aunque la popularidad de los sistemas de control de versiones distribuidos ha crecido mucho en los últimos años, lo cierto es que hay aún un número enorme de proyectos que utilizan (y seguirán utilizando) herramientas como Subversion. De hecho, este es el más popular entre los sistemas centralizados.

Si bien Mercurial cuenta con buenas herramientas para convertir repositorios Subversion a Mercurial, lo cierto es que para trabajar en el otro sentido el panorama no es tan bueno.

Mediante este proyecto se intentará mejorar el conjunto de herramientas de conversión, de modo que en el futuro podamos trabajar cómodamente sobre con Mercurial sobre un repositorio Subversion.

Integrar TortoiseHG con un gestor de fichero en Linux

El cuarto y último proyecto tiene dos objetivos:

  • Por un lado, mejorar la integración de TortoiseHG con Nautilus.
  • Y por otro, construir una interfaz gráfica unificada para seguir la evolución de un proyecto.

Aparece Mercurial 1.0 después de tres años

Como desarrolladores de software, consideramos que un buen sistemas de control de versiones es una herramienta básica e imprescindible para realizar nuestro trabajo.

Desde la universidad, cuando tuvimos nuestro primer contacto con el viejo CVS, hemos probado unas pocas: Subversion (como reemplazo directo de la anterior), Darcs (cuando nos interesamos por los "distribuidos") y Mercurial (huyendo de algunos problemas con Darcs), además de tontear con SvK y Git.

Dicho esto, comprenderán que esta semana nos hayamos alegrado al ver que, tras tres años de desarrollo, por fin ha salido la versión 1.0 de Mercurial que es, junto a Darcs, el sistema que usamos actualmente.

Mercurial es un sistema de control de versiones distribuido, rápido y que presume de escalar muy bien. Además, es posible extenderlo usando Python, lo que abre un amplio abanico de posibilidades. De hecho, hay una buena cantidad de extensiones.

A los interesados, les recomiendo que echen un vistazo a la lista de funcionalidades y, para profundizar, la guía no oficial es también muy recomendable.

No más "en casa del herrero..."

Para ser sincero, hace tiempo que perdí la cuenta de las veces que recurrimos al famoso dicho en casa del herrero, cuchara de palo cuando nuestros clientes nos preguntaban por nuestra web. El motivo es que, la mayor parte de nuestros esfuerzos, están precisamente centrados en nuestros clientes y poner en marcha nuestra propia web era una tarea que siempre quedaba relegada al último lugar.

Distribuir contenido