Por Hugo Cayón Laso
Git desde cero: guía básica de control de versiones para desarrolladores
¿Qué es Git y para qué sirve?
Git es un sistema de control de versiones distribuido que permite registrar cambios en el código, colaborar con otros desarrolladores y volver atrás cuando algo falla.
Git sirve para resolver problemas muy comunes en el desarrollo de software:
Guardar el historial del proyecto Permite volver a versiones anteriores si algo se rompe o deja de funcionar.
Trabajar sin miedo a equivocarte Puedes experimentar con el código sabiendo que siempre podrás deshacer los cambios.
Colaborar con otros desarrolladores Varias personas pueden trabajar en el mismo proyecto sin sobrescribir el trabajo de los demás.
Controlar quién hizo cada cambio Cada modificación queda asociada a una persona y a un momento concreto.
Organizar el desarrollo con ramas Facilita trabajar en nuevas funcionalidades, correcciones o pruebas sin afectar al código principal.
Integrarse con plataformas como GitHub o GitLab Permite compartir el código, revisar cambios y automatizar despliegues.
En resumen, Git es imprescindible en cualquier proyecto profesional.
Instalación de Git
Para instalar Git, sigue estos pasos según tu sistema operativo:
Windows:
Descarga el instalador desde git-scm.com y sigue las instrucciones.
macOS:
Usa Homebrew: brew install git o descarga el instalador desde git-scm.com.
Linux:
Usa el gestor de paquetes de tu distribución, por ejemplo en Ubuntu: sudo apt-get install git.
Configuración inicial
Git necesita saber quién eres para poder asociar los cambios a una persona concreta. Esta información se guarda en cada commit.
Configura tu nombre y correo electrónico:
git config --global user.name "Tu Nombre"
git config --global user.email "tu@email.com"
Esta configuración se hace una sola vez por equipo.
Para verificar la configuración, usa:
git config --list
Creación de un repositorio Git
Para iniciar un nuevo repositorio Git en tu proyecto, navega a la carpeta del proyecto y ejecuta:
git init
Esto crea una carpeta oculta .git donde Git almacenará toda la información del repositorio.
Clonar un repositorio existente:
git clone url-del-repositorio
Estados de Git
Git tiene cuatro estados principales para los archivos:
- Untracked: Archivos nuevos no rastreados por Git.
- Modified: Archivos que han sido modificados pero no preparados para commit.
- Staged: Archivos preparados para el próximo commit.
- Committed: Cambios guardados en el historial de Git.
Añadir archivos al área de preparación (staging area)
Para preparar archivos para el próximo commit, usa:
git add nombre-del-archivo
Para añadir todos los archivos modificados:
git add .
Hacer un commit
Para guardar los cambios preparados en el historial de Git, usa:
git commit -m "Mensaje descriptivo del commit"
El mensaje debe ser claro y describir los cambios realizados.
Ver el estado del repositorio
Para ver el estado actual del repositorio y los archivos, usa:
git status
Historial de commits:
git log
Ver un historial más compacto:
git log --oneline
Trabajar con ramas
Las ramas permiten desarrollar nuevas funcionalidades o corregir errores sin afectar al código principal.
Crear una nueva rama:
git branch nombre-de-la-rama
Cambiar a una rama existente:
git checkout nombre-de-la-rama
Crear y cambiar a una nueva rama en un solo comando:
git checkout -b nombre-de-la-rama
Listar todas las ramas:
git branch
Fusionar una rama en la rama actual:
git merge nombre-de-la-rama
Eliminar una rama:
git branch -d nombre-de-la-rama
Trabajar con repositorios remotos
Para conectar tu repositorio local con un repositorio remoto (por ejemplo, en GitHub), usa:
git remote add origin url-del-repositorio
Enviar cambios al repositorio remoto:
git push origin nombre-de-la-rama
Obtener cambios del repositorio remoto:
git pull origin nombre-de-la-rama
Uso de .gitignore
El archivo .gitignore permite evitar subir archivos innecesarios como:
- node_modules
- archivos de entorno (.env)
- builds
Ejemplo:
# build output
dist/
# generated types
.astro/
# dependencies
node_modules/
# logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# environment variables
.env
.env.production
Buenas prácticas con Git
- Realiza commits frecuentes con mensajes claros, que describan los cambios realizados.
- Usa ramas para desarrollar nuevas funcionalidades.
- Revisa los cambios antes de hacer un commit.
- Mantén tu repositorio remoto actualizado.
- Evita subir archivos innecesarios (usa un archivo
.gitignore). - Colabora y revisa el código de otros desarrolladores.
- Aprende a resolver conflictos de fusión (merge conflicts).