Git es un sistema distribuido de control de versiones,
utilizado principalmente para el desarrollo de software.
Actualmente, Git es usado por grandes organizaciones,
tanto en proyectos de código abierto
como en softwares comerciales.
Existen diversas razones para usar Git. Por ejemplo, esta herramienta permite,
- llevar un registro de múltiples versiones de un archivo,
- colaborar con otros desarolladores en un mismo proyecto,
- ver cuánto ha trabajado cada uno: quién, dónde y cuándo,
- experimentar con alguna nueva funcionalidad,
- revisar el historial de cierto código,
- seguir bugs, analizando qué fue lo que rompió tu código.
Es altamente probable que ya estés familiarizado con los comandos básicos:
clone, status, add, commit, push, pull.
Sin embargo, Git nos ofrece mucho más que eso.
No vale la pena reinventar la rueda en este tema.
Hay decenas de tutoriales de Git dando vuelta en las interwebs.
Pero mira, en la siguiente lista, hemos recopilado los tres mejores*,
ordenados de menor a mayor profundidad.
-
Try Git
El clásico tutorial interactivo de Git creado por Code School.
No debería tomar más de una hora, siendo un buen punto de inicio. -
Ry's Git Tutorial
Un excelente tutorial escrito desde un punto de vista práctico.
Además, las explicaciones están acompañadas de ilustrativos diagramas. -
Getting Git Right
Compilado de tutoriales y consejos, con ejemplos prácticos. -
Pro Git
Espera, ¿quieres saber todavía más? 😀
Aquí tienes el libro oficial para aprender todo acerca de Git: desde lo más básico hasta las técnicas más avanzadas.
Y finalmente, una mención honrosa para...
- Explain Git with D3
Un brillante trabajo que explica visualmente qué ocurre al ejecutar algunos comandos de Git. Me saco el sombrero. 🎩
Mantener cierta consistencia en un equipo de muchas personas,
aunque inicialmente pueda parecer una pérdida de tiempo,
será de enorme ayuda en el mediano-largo plazo.
A continuación, entregamos algunos consejos de utilidad.
-
Escribir buenos mensajes
Pero... ¿qué es un buen mensaje? Esta pequeña guía intenta ofrecer una respuesta.</advertising> -
Realizar commits atómicos
La idea es hacer un cambio lógico por cada commit. Elaborar commits pequeños permite entenderlos fácilmente, pudiendo, por ejemplo, revertirlos en caso de que sea necesario. -
No hacer commits a medio camino
Por el punto anterior, aunque hayas terminado tu jornada laboral, hacer un commit al final del día no es una buena idea. Asimismo, si debes cambiar de branch (e.g. para hacer un hotfix), no caigas en la tentación de hacer un commit apurado. En ese caso,git stash
es un buen aliado. -
Ponerse de acuerdo en un workflow
Existe una gran variedad de workflows en Git. Sin embargo, elegir el flujo adecuado depende del tamaño del proyecto, de las preferencias del equipo, de las metodologías de deployment, entre otros criterios.
Finalmente, lo importante es llegar a un consenso para que todo el equipo esté en la misma sintonía.
gitflow es una metodología de branching para Git diseñada por Vincent Driessen.
To be continued...
Git Best Practices — Git Tower
*mejores, según criterios que no serán revelados en esta guía.