Para un proyecto de código abierto al que pertenezco (Webchess), decidimos que es hora de buscar un nuevo sistema de control de versiones.Como el proyecto se encuentra en SourceForge, SVN es un candidato natural, pero la naturaleza de los desarrolladores, nos invita a buscar en los sistemas de control de versiones distribuidos. Los principales concursantes fueron Bazaar, Git y Mercurial.Después de evaluar muchas cosas de acuerdo a las necesidades del proyecto; tuvimos un empate técnico entre Mercurial y Bazaar, así que el desempate fue por decisión:El ganador fué Bazaar.
Por el momento, sólo estoy agregando links, pero eventualmente agregaré comparaciones y/o conclusiones aquí mismo.
Se dice que una de las principales cosas que empujó a git hacia adelante, fue la existencia de github. Pero existen sitios de alojamiento para todos.
Si tu proyecto es de código abierto, quizás ya conoces SourceForge, o tienes otra opción; pero mi intención es enfocarme en los más populares. Y de pasada agrego a SourceForge, para tener comparación.
Los principales contendientes:
Hasta el 2019, si necesitabas un repositorio privado y gratuito, lo mejor quizás era bitbucket (con la limitante de 5 usuarios), pero en 2019 se anunció que sólo se va a seguir soportando git (empezando en 2020). Aún es opción si quieres usar git; pero si quieres usar otro (como mercurial), quizás lo mejor es buscar un sitio de alojamiento menos concido o habilitar tu propio servidor (si tienes acceso ssh a un servidor, quizás no necesitas instalar un manejador web).
En abril de 2020, GitHub anunció que los repositorios privados también iban a ser gratuitos. Una muy buena noticia para los usuarios de git.
A fin de cuentas los desarrolladores que participamos en la elección del sistema de control de versiones teníamos algo en común: todos creemos que la mayoría de las veces vamos a usar la línea de comandos para acceder a los comandos de bzr. Pero es importante tener una buena herramienta GUI para atraer a otros desarrolladores.
Bazaar tiene su propio GUI, Bazaar Explorer, del cual se enorgullecen.
Mercurial tiene varios GUIs; empezando por hgk (clon de gitk) y TortoiseHG (que también hay para linux con integración para Nautilus).
Git también tiene varios GUIs, pero gitk es el que viene en la instalación.
Si usas Windows, definitivamente te recomiendo usar algún Tortoise..
.. hay TortoiseHG, TortoiseGit y TortoiseBzr.
Y si aún no migras a un sistema distribuido, hay TortoiseCVS y TortoiseSVN.
Nota: Utiliza las versiones recientes de Tortoise*, ya que las anteriores (anteriores al 2009) podían conflictuar entre si.
Bazaar - Why switch to Bazaar?
Mercurial - Why Mercurial?
Git - Why Git is better than X
Wikipedia - Comparison of revision control software
Comparison of open source software hosting facilities - Wikipedia
Bitbucket Plans and billing - Atlassian