Sigueme en Twitter
«Anterior | Siguiente»

Sobre Control de Versiones Distribuido

19/03/2010

El señor Joel [1] escribe muchas verdades sobre control de versiones distribuido:

“No puedo decirte cuantos usuarios de Subversion me han contado esta historia:

«Tratamos de hacer un branch de nuestro código, y funcionó bien. Pero cuando llego el tiempo de hacer el merge, fue una pesadilla y prácticamente tuvimos que aplicar cada cambio a mano. Juramos nunca más volverlo a hacer y desarrollamos una nueva manera de desarrollar software utilizando condicionales if’s en lugar de branches»

A veces hasta están un poco orgullosos de esta nueva invención de ellos. Como si fuera una virtud el hecho de que tu control de versiones no esta haciendo lo que esta supuestamente destinado a hacer.”

¿A quién no le ha pasado? hacer merges después de muchos cambios en Subversion es un dolor de cabeza.

Yo solo he trabajado en proyectos personales con Git, pero el hecho de que te permita trabajar sin conexión y hacer commits localmente es oro puro. Pero para equipos tiene aún más ventajas. En serio, el hecho de poder hacer cambios como loco, guardando un historial de ellos sin que temas romper el repositorio de los demás no es apreciado lo suficiente. Agrega a eso branching y merges que funcionen como se supone que deben de funcionar y no hay ninguna razón para que no lo pruebes [2].

Git y Mercurial son a Subversion lo que el mismo fue para CVS. Simplemente son mejores.


[1] Por mucho uno de mis bloggers favoritos, es una verdadera lástima que se retire.
[2] HG Init es una gran guía para entender sistemas de version distribuidos, aunque esta orientado a Mercurial, te servirán los conceptos para Git. learn.github es el imprescindible si estás interesado en Git.


Hay 5 comentarios:

  1. 19/03/2010Joel dice:

    Yo creía que el Sr. Joel era yo :(

    Saludos.

  2. 19/03/2010pablasso dice:

    Cuando crezcas Joel, cuando crezcas

  3. 19/03/2010Jesús dice:

    hoYgAn kOmo knFigurO mi giT n wiNdOs…

  4. 21/03/2010Moises Silva dice:

    Curioso … darcs ha hecho eso por un par de años antes que git existiera y nadie lo pelaba … Linus escribe algo similar ( mismos conceptos ) y se vuelve inmediatamente cool e innovador … honestamente creo que git es mejor ( principalmente por el hecho de que este escrito en C hace el deployment mas sencillo y la comunidad creada por los Linus fan boys ayuda ), sin embargo no dejo de ver con un poco de desdén el hecho de que casi no se mencione darcs como uno de los pioneros en el area al lado de monotone.

  5. 21/03/2010pablasso dice:

    No creo que ese sea el punto por el que Darcs no se haya hecho “mainstream”, bien recuerdo que teníamos problemas al manejarlo con muchos archivos, sino lo usaron fue solamente por performance. Y según leo, quien sabe que tantos años después todavía tiene los mismos problemas.

Escribe tu comentario:

¿Escribiste código? [+]

Para hacerlo más legible puedes utilizar la etiqueta <pre>.
Ejemplo: <pre lang="php" line="1"> código </pre>
  • El atributo lang indica el lenguaje de programación.
  • El atributo line indica desde donde comienza la numeración.


  Los mas frikis pueden suscribirse a los comentarios por RSS.