GIT: Introducción al control de versiones

Git es un programa para el control de versiones, en esta serie de artículos (tutorial o curso) voy a enseñarte todo lo que necesitas para iniciarte en el control de versiones con Git.

Control de versiones y Git

Cuando trabajamos en algún programa, creamos archivos con código, los guardamos y los modificamos muchas veces, esto no parece generar algún problema, hasta que trabajamos en equipo y más de una persona necesita modificar el mismo archivo al mismo tiempo, entonces ¿como saber cual versión del archivo es la final?, ¿Que pasa si de pronto el programa deja de funcionar?, ¿Como saber quien fue la persona que modifico un archivo?

Todas estas preguntas y problemas encuentran su respuesta en el control de versiones, al usar GIT existe un servidor que lleva el control de todos los cambios que se envían, y guarda versiones de cada archivo, cada vez que hacemos un cambio, ademas guarda información sobre la persona que hizo el cambio, la fecha y algún comentario que se haya incluido. De esta forma podemos hacer estas cosas:

  1. Si algo falla podemos regresar a una versión anterior (estable) del programa, mientras encontramos y corregimos el error.
  2. Podemos comparar dos versiones diferentes del mismo archivo
  3. Podemos saber quien realizo un cambio y en que fecha lo hizo
  4. Podemos trabajar varias personas sobre el mismo archivo sin tener que esperar a que la otra persona termine y sin perder los cambios que cada uno hizo.

Otro problema común cuando trabajamos en una empresa es que si alguien detecta un error, no se puede corregir y aplicar el cambio, por que la versión de desarrollo tiene código extra (de algún nuevo requerimiento) que no ha sido probado, entonces pasar eso al sistema en uso, podría ocasionar más problemas.

Pero esto tampoco es problema para Git, por que maneja un concepto de "ramas" que es como una versión extra del código completo, aquí podemos trabajar de forma individual cada requerimiento nuevo y hasta que haya sido debidamente probado, se aplican los cambios a la versión maestra (master), de esta forma cualquier error que se detecte en el sistema, se puede corregir sin tener que aplicar al sistema en uso, código que no haya sido verificado.

Git y GitHub

Ahora ya sabemos que Git es un sistema para el control de versiones, este sistema se basa en comandos de consola. También existe GitHub que es un servidor web que contiene muchos repositorios (proyectos), algunos son y privados y otros son públicos, es decir, tenemos acceso a ellos, internamente GitHub utiliza Git.

crear cuenta en github

Para los ejemplos siguientes vamos a necesitar instalar Git en nuestra computadora y crear una cuenta gratis en GitHub. Para instalar Git podemos ir a este enlace y seguir las instrucciones. Para crear una cuenta en GitHub podemos visitar este otro enlace.

Esta era una introducción al control de versiones, en el siguiente articulo voy a mostrarte unos ejemplos prácticos del uso de Git y GitHub.