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.