Veo muchas respuestas a esto que se basan en los sentimientos que el autor tuvo al escuchar acerca de uno u otro SCM. Otros dicen que todo fue pura suerte. Creo que la suerte se remonta a la historia.
Hablaré de historia.
Git y Mercurial se crearon simultáneamente para resolver el mismo problema. En aquellos días, el kernel de Linux se vio obligado a salir de un período en el que había estado utilizando BitKeeper , un SCM distribuido de propiedad que les había servido durante muchos años.
De hecho, Larry McVoy, CEO de BitMover, la compañía detrás de BitKeeper, dejó de regalar su software de forma gratuita a los desarrolladores de Linux, porque alguien dentro de la comunidad de Linux tenía ingeniería inversa.
Linus Torvalds, insatisfecho con lo que ya existía, comenzó a trabajar en un nuevo SCM que pronto llamaría Git. Poco después, Matt Mackall comenzó el proyecto Mercurial por motivos similares.
Luego de un tiempo de desarrollo de estos proyectos por separado, Matt Mackall presentó una versión avanzada de su SCM y la evaluó de cierta manera, comparándola con Git (que solo tenía un par de semanas). Linus consideró usarlo en lugar de Git para el desarrollo de Kernel, pero abandonó la idea cuando se dio cuenta de que Mercurial estaba utilizando Changesets para registrar modificaciones de revisión . Temía que fuera demasiado parecido a la forma en que trabajaba BitKeeper, y ciertamente no quería nada que pudiera hacer que alguien dijera: "Ellos construyeron un clon de BitKeeper".
Por lo tanto, Git se usó para el desarrollo del Kernel en lugar de Mercurial, pero ambos eran técnicamente relevantes. El resultado final es que Git comenzó a utilizarse cuando se diseñó para ser utilizado, mientras que Mercurial no fue tan rápido en encontrar su primer gran uso de FOSS. Debido a que estaba dotado de un muy buen diseño, y gracias a la perseverancia de Matt Mackall, eventualmente se hizo famoso y se utilizó para grandes proyectos del mundo real.
Hoy, ambos son famosos. Es imposible decir cuál es el más famoso. Google Code solo integraba Git recientemente, mientras que tenía Mercurial durante mucho tiempo. Muchos proyectos realmente grandes y famosos usan cualquiera.
Supongo que lo que quiero decir es que, cuando la razón por la que has iniciado un proyecto se desvanece, es más difícil ganar popularidad, pero aún es factible.
Bazar es otro SCM que es muy famoso en el mundo de GNU, pero no tanto fuera de eso, porque se creó con la intención de satisfacer a la comunidad de GNU. El software a menudo va donde sus creadores quieren ir, y no más allá.
Por otro lado, los SCM distribuidos son claros ganadores. No veo muchos SCM no distribuidos ampliamente utilizados por ahí.