+34 669 45 05 29

Los sistemas de control de versiones son pequeños programas que se utilizan durante el desarrollo de una web, aplicación o app, para que durante el proceso se pueda gestionar el trabajo de varios desarrolladores, y las evoluciones de cada avance, para que poder resolver los conflictos, y al mismo tiempo evitar fallos imprevistos.

Vamos a entrar un poco más en detalle, para ello vamos a contemplar un contexto el cual nos ayude a explicar como utilizamos los sistemas de control de versiones. Imaginemos que tenemos que hacer una tienda online bajo alguno de los CMS más conocidos.

Ya trabajemos solos o en equipo, alguien haría la instalación del CMS y después de ver que todo funciona es cuando empieza el trabajo de verdad.

Lo primero es la plantilla, que para nuestro ejemplo vamos a pensar que usamos una ya hecha, pero que no se adapta 100% a nuestra imagen corporativa, ni a todas las necesidades que tenemos en el proyecto. Cuando la instalamos descubrimos que muchas cosas no funcionan como esperamos, bueno, tampoco es tan grave. Simplemente seleccionamos otra y ya esta. Después empezamos con los cambios de css, instalamos plug-ins, extensiones, tocamos un poco el código para ajustar algo a nuestro gusto…. etc.etc.etc.

Es decir hacemos cientos de cambios que potencialmente pueden suponer errores, o que almacenemos código que después no necesitamos etc. El primer uso de los sistemas de control de versiones es permitirte llevar un control de cada uno de los avances que realices en el proyecto, para que en el caso de que necesites volver a una situación anterior no requieras estar haciendo copias de seguridad continuamente.

A esta problemática vamos a añadir el componente de ser varias personas involucradas en el proyecto y tocando los mismos ficheros. Si dos personas diferentes tocan el mismo fichero el trabajo de uno solaparía al del otro, provocando perdida de trabajo o errores.

El sistema de control de versiones, también permite ver cuando un fichero tiene dos fuentes de código diferentes y antes de gestionar el fichero indicará como hacer una revisión de los cambios del mismo para evitar problemas.

Los sistemas de control de versiones más conocidos

Actualmente se utilizan mayoritariamente 2 sistemas de control de versiones, Subversion y Git. Este último es que el más adeptos tiene en la actualidad ya que permite una estructura de trabajo no piramidal y colaborativa.