¿Qué es Git?

Git es un Sistema de Control de Versiones Distribuido (DVCS), actualmente el más popular entre la comunidad de Software de Código Abierto (Open Source) y también en la industria comercial.

Básicamente Git te da control sobre las diferentes versiones de tu código, ¿por qué? Porque te permite accesar a cualquier etapa de tu proyecto, esto te ayuda a no preocuparte por respaldos, equivocaciones o agregar nuevas personas al desarrollo de tu proyecto.

HIstoria

Git se desarrolló por la comunidad de desarrolladores Linux. Estos desarrolladores empezaron a usar un producto comercial de DVCS llamado BitKeeper para el mantenimiento del software Kernel de Linux el cual es un Software Open Source. Pero la relación se rompió entre la comunidad Linux y la compañía BitKeeper, y BitKeeper revocó las herramientas que eran sin costo para la comunidad.

Por lo que la comunidad Linux decidió hacer su propio Sistema de Control de Versiones Distribuido teniendo como metas:

  • Velocidad
  • Diseño simple
  • Apoyo total para el desarrollo no-lineal
  • Completamente distribuido
  • Capaz de manejar proyectos grandes

Es así que en 2005 Git nació, manteniendo estas cualidades iniciales.

La diferencia entre Git y otros Sistemas de Control de Versiones

Almacenamiento

Otros

Manejan el almacenamiento de información como un conjunto de archivos, y los cambios realizados en cada archivo a lo largo del tiempo.

Git

Toma una secuencia de copias fotográficas de cómo se ven todos sus archivos en ese momento y almacena una referencia (como un enlace) a esa fotografía.

Acceso a la Información

Otros

Algunos VCS necesitan conectarse a otro servidor para consultar cierta información. Esto presenta algunas desventajas cuando no estás conectado en una red, si estas viajando y volando, quieres hacer algo de trabajo es muy difícil o imposible guardar cambios, así como subirlos a la base de datos.

Git

La mayoría de las operaciones en Git necesitan sólo de archivos y recursos locales para trabajar. Lo que le da muchas ventajas de velocidad.

Integridad

Git

Todo en Git se pasa por una lista de verificación, lo cual hace que sea imposible cambiar el contenido de un archivo o directorio sin que Git lo sepa. Esto da control a Git de evitar perder información en tránsito.

Cambios en tu código

Otros

Puedes perder o estropear los cambios antes de hacer el Commit.

Git

Después de enviar una fotografía a Git es muy difícil perderlo, especialmente si transfiere su base de datos regularmente a otro repositorio.

Los 3 Estados de Git

Git tiene tres estados principales donde tus archivos pueden encontrarse.

Modificado (Modified)

significa que has modificado el archivo, pero todavía no lo has confirmado a tu base de datos.

Preparado (Staged)

significa que has marcado un archivo modificado en su versión actual para que vaya en tu próxima confirmación. 

Confirmado (Commited)

Significa que los datos están almacenados de manera segura en tu base de datos local.

Por lo que estas son las Tres secciones principales en un proyecto de Git:

El directorio de trabajo (The Working Tree)

Es una copia de una versión del proyecto. Estos archivos se extraen de la base de datos comprimida en el directorio de Git y se colocan en tu disco local para que los puedas usar o modificar.

El área de preparación (Staging area)

Es un archivo, generalmente se encuentra en el directorio Git, que almacena la información acerca de lo que irá en la siguiente confirmación.

El directorio de Git (Git directory)

Es donde Git guarda la metadata y la base de datos de objetos de tu proyecto. Es lo parte más importante de Git, y es el directorio que se copia cuando clonas un repositorio desde otra computadora.

El flujo de trabajo básico en Git va algo así:

  1. Modificas archivos en el Directorio de Trabajo
  2. Preparas los archivos, agregando los cambios al Área de Preparación.
  3. Confirmas los cambios, lo que tomará los archivos del Área de Preparación tal y como están y almacenará una copia fotográfica de manera permanente en tu Directorio de Git.

Conclusión

Ya sea que estés enfocada en programación, o quieras trabajar con un equipo para el desarrollo de un proyecto o tan siquiera estás empezando a programar Git es una de las herramientas que deberías usar. ¿Por qué? Porque te da accesibilidad directa (sin conectarse a internet) para usar algunas de las operaciones más sencillas para consultar versiones de tu código, para subir actualizaciones de tu código, así como lo ligero y rápido que es accesar al historial de tu código.

¿Estás de acuerdo? ¿Qué Sistema de Control de Versiones funciona para ti?

Te recomiendo sumergirte en el sitio oficial de Git para más información. También leer el libro oficial de Git, escrito por Scott Chacon y Ben Straub. Es muy interesante porque uno de los autores trabajaba en GitHub cuando escribía la primera versión del libro, y en ese entonces GitHub contaba con algunos miles de personas usando el sistema. Y en un periodo de 5 años GitHub anunció su decimo millonésimo proyecto hospedado, con casi 5 millones de programadores registrados y 230 empleados.

NEWSLETTER

Suscríbete a Sencillamente Web

Reflexiones sobre desarrollo web

Contenido Relacionado

¿Qué es Flexbox Froggy?

¿Qué es Flexbox Froggy?

Flexbox Froggy es un juego para aprender y practicar CSS flexbox. Tabla de Contenidos Introducción Acerca de Flexbox Froggy ¿Cómo se juega Flexbox Froggy? Jugando Flexbox Froggy Introducción A veces recibo mensajes preguntándome si es necesario aprender primero los...

¿Dónde buscar ideas para sitios web?

¿Dónde buscar ideas para sitios web?

https://youtu.be/YiGZHoHE6rY Quiero compartirles cinco fuentes que pueden consultar para ayudarte a crear bosquejos y ayudarte a desarrollar más ideas para crear un sitio web. Tabla de Contenidos Introducción Colours Cafe Daily Web Design Frontend Mentor Wrap...