Para cualquier persona que esté dando sus primeros pasos en el mundo del desarrollo de software, Git puede parecer un monstruo de mil cabezas. Hay comandos que parecen sacados de otro idioma, errores que no se entienden del todo, conflictos que aparecen de la nada y una curva de aprendizaje que, al principio, puede asustar. Pero como muchas herramientas poderosas, una vez que se entiende cómo funciona, Git se convierte en el mejor aliado del programador.
En Pigmalion Software lo sabemos bien y, por eso, quisimos acercarles esta guía pensada especialmente para developers que están dando sus primeros pasos en el mundo de la tecnología. En este caso, fue Nicolás Feinsilber, Junior Developer en Pigmalion Software, quien compartió su experiencia personal desde sus tropiezos iniciales hasta las buenas prácticas que adquirió con el tiempo.
¿Qué es Git y por qué deberías usarlo?
Git es un sistema de control de versiones distribuido. En otras palabras, es una herramienta que permite llevar un registro de todos los cambios que se hacen en el código, facilitando la colaboración entre distintos desarrolladores, la creación de nuevas funcionalidades sin afectar el código principal y la posibilidad de volver atrás cuando algo sale mal.
Es utilizado por equipos de todo el mundo, desde startups hasta grandes corporaciones. Dominarlo no solo es una necesidad técnica, sino también una forma de trabajar mejor en equipo y tener más control sobre los proyectos.
El desconcierto inicial de los primeros pasos
Cuando uno se enfrenta por primera vez a Git es común sentir confusión. No es raro que un developer principiante se pregunte: ¿qué es exactamente un commit?, ¿cómo subo mis archivos?, ¿qué significa hacer un push o un pull?, ¿cómo creo una rama sin romper todo?
«Mi primer contacto con Git fue en la facultad. En ese entonces, lo más confuso fue entender cómo subir los archivos al repositorio, cómo hacer ramas y cambiar entre ellas y cómo crear un repo. Lograr entender desde el add hasta el push; qué es un commit y cómo se escribe; hacer branches y mergearlas; y qué hacer cuando te da error», recuerda Nicolás.
Esos primeros pasos suelen estar llenos de errores. Pero no hay que asustarse: equivocarse también es aprender. «Los errores más comunes que cometía eran olvidarme los comandos y mergear mal las branches. Y desde que lo uso para trabajar, esos errores también se trasladaron al rebase y a olvidarme de hacer nuevas branches. Todo lo resolví con práctica y rompiendo mil veces las cosas. La experiencia es tu herramienta más poderosa», asegura el desarrollador.
Los comandos que hay que dominar
Para no volverse loco al principio, es importante enfocarse en un conjunto pequeño de comandos. No hace falta saberlo todo desde el primer día, pero sí tener claro para qué sirve cada acción básica. Siguiendo estos lineamientos, los comandos más importantes son:
git init: inicializa un repositorio en tu carpeta de proyectogit clone: clona un repositorio remoto en tu máquinagit add: agrega archivos al «escenario» para ser versionadosgit commit -m "mensaje": guarda los cambios con un mensajegit push: sube los commits al repositorio remotogit pull: trae los cambios del repositorio remotogit checkout: cambia entre ramas o versiones específicasgit branch: muestra o crea nuevas ramasgit merge: combina una rama con otra
Estos comandos permiten cubrir el 90% de las necesidades cotidianas de un developer que recién comienza. Y, como asegura Nicolás, el miedo se vence con práctica: «Lo principal es ver tutoriales para entender de qué se trata y no tener miedo de romper todo, porque al principio eso es lo que va a ocurrir. Después, con experiencia, cualquier developer va a poder utilizar el sistema tranquilamente».
Buenas prácticas desde el día uno
A medida que se avanza en el uso de Git, se empieza a entender qué hábitos son clave para evitar dolores de cabeza más adelante. Son pequeñas decisiones que tienen un gran impacto en la fluidez del trabajo diario. Según comenta Nicolás, él aprendió varias de estas buenas prácticas trabajando en Pigmalion Software. Y, entre las más importantes, destaca:
Hacer una branch nueva para cada cambio que se quiera implementar. Esto permite trabajar aisladamente sin afectar el código principal.
Nombrar las ramas con claridad y, si es posible, incluyendo el número de ticket de Jira, lo que facilita el seguimiento del trabajo.
Ser explícito en los mensajes de commit. No alcanza con poner «cambios» o «fix», sino que es importante explicar qué se hizo y por qué.
En los merge requests tomarse el tiempo para explicar el razonamiento detrás del código.
Evitar el uso de
push--force. Puede ser útil en algunos casos avanzados, pero en manos inexpertas puede romper todo el repositorio.Comunicar lo que se hizo para que el resto del equipo pueda entenderlo sin tener que adivinar.«Es muy importante ser explicativos en los merge review, así los demás programadores entienden mi punto de vista. Y, más que nada, tratar de explicar siempre lo que hicimos para que los demás lo entiendan», asevera el Junior Developer.

«Lo principal es ver tutoriales de Git para entender y no tener miedo de romper todo, porque al principio lo vas a romper. Después, con experiencia, vas a poder usarlo tranquilo», explica Nicolás Feinsilber, Junior Developer de Pigmalion Software.
Automatizar para no repetir
Una de las cosas interesantes de Git es que se puede combinar con Bash (la terminal de comandos de Linux o macOS, o WSL en Windows) para crear scripts que automatizan tareas repetitivas. Esto puede hacer mucho más eficiente el flujo de trabajo, especialmente cuando hay que hacer muchos rebases o cambiar entre ramas con mayor frecuencia.
«Lo bueno de Git es que, si sabés Bash, podés hacer tus propios scripts para automatizar tareas tediosas con Git, como el rebase«, señala Nicolás.
En este sentido, aprender a usar Git de forma más avanzada puede venir más adelante, pero es útil saber desde el principio que Git es una herramienta que se adapta al estilo de trabajo de cada uno.
Herramienta poderosa, pero no mágica
Es fácil caer en la trampa de pensar que Git va a resolver todos los problemas de colaboración o de organización del código. Pero la herramienta es tan buena como los hábitos de las personas que la usan.
En Pigmalion Software, trabajamos con equipos que entienden que el control de versiones no es solo técnico, sino que también es una práctica colaborativa. La claridad en los mensajes, el orden en las ramas y el respeto por el trabajo del otro hacen que Git funcione como lo que realmente es: un lenguaje común para construir software en equipo. Y, como todo lenguaje, se aprende con tiempo, práctica y paciencia.
Lo importante es no rendirse
Aprender Git puede ser frustrante. Al principio parece que todo está bien hasta que aparece un mensaje de error imposible de entender. Pero esa es parte de la experiencia. «Es una herramienta muy poderosa y sirve muchísimo, pero puede asustar por cómo se ve», admite Nicolás.
Y tiene razón. Pero justamente por eso, vale la pena insistir. Porque entender Git no solo te ayuda a versionar tu código, también te convierte en un mejor desarrollador. Te obliga a pensar en el flujo de trabajo, a escribir mensajes claros, a ordenar tus cambios y a trabajar con otros de manera más profesional. Así que si estás empezando y te sentís abrumado, recordá: todos pasamos por ahí. Lo importante es practicar, romper cosas sin miedo y seguir aprendiendo.
Si te interesa saber más sobre cómo trabajamos en Pigmalion Software o querés sumar a tu equipo desarrolladores que ya dominan estas prácticas visitá nuestro sitio web: https://pigmalion.co
