El control de versiones se ha convertido en una herramienta esencial para el desarrollo moderno de software y proyectos de datos. Entre las herramientas disponibles, Git se ha consolidado como el estándar para gestionar cambios en el código y colaborar entre equipos.
Después de aprender los comandos básicos como git init, git add, git commit o git push, es importante conocer otras operaciones fundamentales que se utilizan en el día a día de los proyectos.
En esta segunda parte repasaremos algunos de los comandos más útiles para gestionar repositorios y trabajar de forma eficiente con Git.
Ver el estado del repositorio
Uno de los comandos más utilizados en Git es:
git status
Este comando muestra el estado actual del repositorio, incluyendo:
- Archivos modificados
- Archivos en staging
- Archivos sin seguimiento
- Cambios pendientes de commit
Es una forma rápida de entender qué está ocurriendo en el proyecto antes de realizar nuevas operaciones.
Ver el historial de commits
Para revisar el historial del repositorio se utiliza:
git log
Este comando muestra información sobre los commits realizados, incluyendo:
- Identificador del commit
- Autor
- Fecha
- Mensaje asociado
También existen versiones más compactas como:
git log –oneline
Esto muestra el historial de forma más resumida.
Ver diferencias entre archivos
Git permite comparar cambios entre versiones de archivos utilizando el comando:
git diff
Este comando muestra las diferencias entre:
- Cambios realizados en el código
- Archivos modificados
- Cambios aún no añadidos al staging area
También se puede comparar con el último commit.
Trabajar con ramas
Las ramas permiten trabajar en nuevas funcionalidades sin afectar el código principal.
Para crear una nueva rama:
git branch nueva_rama
Para cambiar a esa rama:
git checkout nueva_rama
Una forma más rápida de hacer ambas operaciones es:
git checkout -b nueva_rama
Esto crea y cambia a la nueva rama en un solo paso.
Ver las ramas existentes
Para listar las ramas disponibles:
git branch
Esto mostrará todas las ramas locales del repositorio.
La rama actual aparece marcada con un asterisco.
Fusionar ramas
Cuando una funcionalidad está lista, normalmente se fusiona con la rama principal.
Ejemplo:
git checkout main
git merge nueva_rama
Esto integra los cambios de la rama secundaria en la rama principal.
En algunos casos pueden aparecer conflictos de merge, que deben resolverse manualmente.
Trabajar con repositorios remotos
Para ver los repositorios remotos asociados al proyecto:
git remote -v
Esto muestra las direcciones de los repositorios remotos configurados.
Descargar cambios del repositorio remoto
Para obtener cambios realizados por otros colaboradores se utiliza:
git pull
Este comando descarga los cambios del repositorio remoto y los integra en la rama actual.
Enviar cambios al repositorio remoto
Después de realizar commits, los cambios pueden enviarse al repositorio remoto con:
git push
Esto sincroniza los cambios con plataformas como:
- GitHub
- GitLab
- Bitbucket
Eliminar ramas
Una vez que una rama ya no es necesaria, puede eliminarse.
Eliminar rama local:
git branch -d nombre_rama
Eliminar rama remota:
git push origin –delete nombre_rama
Esto ayuda a mantener el repositorio organizado.
Revertir cambios
En ocasiones puede ser necesario deshacer cambios realizados en el repositorio.
Por ejemplo:
git revert <commit_id>
Este comando crea un nuevo commit que revierte los cambios de uno anterior.
Buenas prácticas al trabajar con Git
Para trabajar eficientemente con Git es recomendable:
- Hacer commits frecuentes y descriptivos
- Utilizar ramas para nuevas funcionalidades
- Mantener el historial limpio
- Revisar cambios antes de hacer commit
- Sincronizar regularmente con el repositorio remoto
Estas prácticas facilitan la colaboración en proyectos de equipo.
Git en proyectos de datos
Git no solo se utiliza en desarrollo de software. En proyectos de datos también es una herramienta fundamental para versionar:
- scripts SQL
- pipelines de datos
- transformaciones en dbt
- notebooks de análisis
- código Python
Muchas organizaciones combinan Git con plataformas analíticas como Snowflake para mantener control y trazabilidad en sus proyectos de datos.
Conclusión
Dominar los comandos básicos de Git permite gestionar proyectos de forma más organizada y colaborar eficientemente con otros desarrolladores. A medida que los proyectos crecen, el uso adecuado de ramas, commits y repositorios remotos se vuelve fundamental para mantener un flujo de trabajo claro y estructurado.
Aprender a utilizar Git correctamente no solo mejora la gestión del código, sino que también facilita la colaboración y la trazabilidad dentro de los equipos de desarrollo.




