Control de versiones (era Re: PHP - domxml_open_file())

Franco Catrin fcatrin en tuxpan.com
Mie Oct 11 18:22:18 CLT 2006


El mié, 11-10-2006 a las 14:59 -0400, Rodrigo Fuentealba escribió:

> No necesito implementarlo, necesito entenderlo. Para mí es más lógico
> usar la última versión de un software, que ha corregido errores. Eso
> de "stable, unstable, devel" o "historical, current, next" o como se
> llame, me significa un quebradero de cabeza.

Es un poco off-topic pero el tema es interesante.

El software no tiene una linea unidimensional de desarrollo, al menos no
el software con cierto grado de complejidad.

Si fuera unidimensional, simplemente tomas la ultima version y listo.
Pero la realidad no es asi.  A medida que los requerimientos cambian hay
partes del software que necesitan cambiar radicalmente, perdiendo la
compatibilidad hacia atras, ademas que debes separar entre lo que estas
"desarrollando" y lo que estas "estabilizando".

Por ejemplo, si tienes una aplicación que se construyó con un
determinado conjunto de requerimientos (o feature set), la entregas, se
acepta y se comienza a utilizar.

Esa aplicación se va estabilizando a medida que se corrigen bugs
(version stable).  En el intertanto te piden implementar nuevas
caracteristicas y comienzas a desarrollarlas.  Mientras estas en eso te
piden un fix de un bug de la version que esta en uso... que haces??
segun tu, le mandarias la ultima version! pero esa version tiene cosas
que aun no has terminado y que ni siquiera estan probadas, ademas tiene
cambios que han eliminado cosas que se estan utilizando

Entonces no puedes tener una sola linea de desarrollo!!!!  No existe "la
ultima version" porque la ultima version no esta terminada.  Tu ultima
version que sirve tiene otro camino paralelo a esa (stable+bugfixes)

Lo que haces en esos casos es mantener una rama estable (stable) en
donde vas aplicando bugfixes, y tienes otra rama en donde estas
desarrollando (unstable/devel).  Hasta que terminas los cambios y tu
version unstable/devel se transforma en stable y estas listo para un
nuevo ciclo de bugfix en esa version y probablemente desarrollo en otra
version.


-- 
Franco Catrin L.       TUXPAN
http://www.tuxpan.com/fcatrin



Más información sobre la lista de distribución Linux