lunes, marzo 30, 2009

And the winner is ...

Just read at the Python-devs mailing list:
Dear Python developers,

The decision is made! I've selected a DVCS to use for Python. We're switching to Mercurial (Hg).

The implementation and schedule is still up in the air -- I am hoping that we can switch before the summer.

It's hard to explain my reasons for choosing -- like most language decisions (especially the difficult ones) it's mostly a matter of gut feelings. One thing I know is that it's better to decide now than to spend another year discussing the pros and cons. All that could be said has been said, pretty much, and my mind is made up.

To me, the advantages of using *some* DVCS are obvious. At PyCon, Brett already announced that Git was no longer being considered -- while it has obviously many fans, it also provokes strong antipathies. So it was between Hg and Bzr (both of which happen to be implemented in Python FWIW). Based on a completely unscientific poll (basically whatever feedback I received in my personal inbox or on Twitter), Hg has a strong following among Python developers and few detractors, while few (except Canonical employees) seem to like Bzr. In addition, most timing experiments point towards Hg being faster than Bzr for most operations, and Hg is (again, subjectively) easier to learn for SVN users than Bzr.

2 comentarios:

gorlok dijo...

Tengo ganas de probar algunos DVCS, y hasta ahora, por lo que vi muy por arriba, Hg es el que más me cierra. El post resume lo que estuve leyendo, solo me falta algún tiempito para evaluarlos y ver con cuál me quedo para mis proyectos :)

Si bien hace mucho tiempo que uso SVN, en realidad hace poco que hago bastante merging de ramas... y la verdad... es que hace agua por todos lados. Hay otros detalles, pero no tan importantes para mi.

Las operaciones de merging en SVN son ridículas y no brindan seguridad en absoluto. Ya nos llevamos varias sorpresas.

Alejo dijo...

Si te interesa, hace varias semanas que Eric Sink en su blog va haciendo diferentes analisis sobre DVCS:

Mercurial está muy bueno porque es muy simple de usar. Hacés commit, push, pull, update, merge, fin del asunto.