Los controles de versiones: GIT

Hace unas semanas os hablaba de los controles de versiones y los distintos usos que en la actualidad recibe este tipo de software, hoy vamos a profundizar en uno de los principales controles de vesiones que existen en la actualidad, hoy hablaremos de Git.

¿Qué es Git?

Git es un software de control de versiones diseñado por Linus Torvalds, pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando estas tienen un gran número de archivos de código fuente.

Este control de versiones se fundamentó en intentar facilitar la integración de distintos programadores que estuviesen distantes entre sí, de ello podremos notar que es un sistema de control de versiones distribuido y enfocado en captar fragmentos de código y facilitar su integración de una forma fácil, sencilla y en la mayoría de las ocasiones automática.

Mi historia usando Git

La primera vez que utilicé un control de versiones fue en 2010 cuando entré en una empresa de practicas como programador, en ese momento la empresa usaba Team Foundation Server centralizado en un servidor y los solapamientos de código y perdidas eran bastante comunes pese a solo ser cuatro programadores aquí en Valladolid y uno o dos en Palencia.

Como no me convencía me fijé en Subversion. Como usaba linux de manera mas o menos regular, no era extraño que para alguna instalacion me tocase usar subversion, aunque hasta entonces y al desconocer lo que era un control de versiones, pensaba que Subversion era como apt-get en linux, un gestor de paquetes. Simplemente era de esas herramientas que usas y no te preocupas por saber cual es su funcionamiento o qué son realmente.

Con el paso del tiempo, y cuando fui programando mas a menudo, ya comencé a ver la necesidad de usar un control de versiones para dentro de mi portatil de cara a minimizar la perdida de información y de paso poder ver como fue evolucionando mi codigo con el paso del tiempo. No fue hasta el año pasado por Julio, cuando conocí Git en busca de un control de versiones que pudiera usar para mi proyecto Not a Number, el cual consistia en hacer una web parecida a la de GitHub pero enfocada a mostrar a empresas como programa la gente, de cara a facilitar su contratación.

En aquel tiempo necesitaba unas librerías para gestionar controles de versiones y Git (junto a las librerías de libgit2) terminaron siendo las mas fáciles de implementar para poder realizar un prototipo de lo que quería crear en un tiempo relativamente corto. Como es obvio, para poder usarlo primero debía aprender todo acerca de su funcionamiento, yo venía de otros sistemas mas centralizados que Git y me asustaba un poco el no tener un servidor que lo controlase todo, pero al final me resultó mas sencillo y amigable usar Git que otros sistemas de control de versiones. Aun a día de hoy tengo proyectos de 2012 los cuales poco a poco migro a Git.

Donde probarlo

Lo mas facil para usar git es descargarselo de la web oficial http://git-scm.com/ y buscar algun manual de los muchos que aparecen por la web. Seguramente dentro de unas semanas comencemos a poner cómo se usa de cara a ser otro manual basico, pero no esta de más.

También os animamos a ver nuestro codigo colgado en GitHub yendo a la dirección: https://github.com/mialejandriastartup en la cual podréis ver los dos proyectos que actualmente tenemos puestos como open source. El primero de ellos es Logs, unas librerías para poder implementar sistemas de registro de acciones en programas que estén desarrollados en C# o en la plataforma .NET.
El otro proyecto es el código de nuestra pagina web para que simplemente se pueda ver como esta programada.

Por ultimo os dejo una captura de un perfil tipico de gitHub mirando codigo, en este caso veréis que soy yo quien lo subió (Arkadoel):
















Comentarios