Comandos Básicos de Git: Una Guía Completa para Principiantes
Git es una de las herramientas más importantes para cualquier desarrollador. Ya sea que estés trabajando en un proyecto personal o colaborando con un equipo, conocer los comandos básicos de Git es fundamental para gestionar el código y el historial de versiones de forma eficiente.
En este blog, exploraremos los comandos esenciales de Git, desde configuración inicial hasta ramas, sincronización y revertir cambios.
Configuración Inicial
Antes de comenzar a trabajar con Git, es importante configurar tu entorno para que tus cambios puedan ser rastreados correctamente.
Configurar tu Nombre y Correo Electrónico
git config --global user.name "Tu Nombre"
git config --global user.email "tuemail@example.com"
Esto asegura que cada commit que realices quede registrado con tu identidad.
Ver Configuración Actual
git config --list
Este comando muestra la configuración actual de tu entorno Git.
Claves SSH
Si planeas usar Git con servicios remotos como GitHub o GitLab, necesitarás configurar una clave SSH.
Generar una Clave SSH
ssh-keygen -t rsa -b 4096 -C "tuemail@example.com"
Esto genera una clave SSH para autenticarte con servidores remotos.
Copiar tu Clave Pública
cat ~/.ssh/id_rsa.pub
Usa este comando para mostrar la clave pública y agregarla a tu cuenta en GitHub, GitLab, u otro servidor remoto.
Inicialización de Repositorios
Crear un Repositorio Local
git init
Este comando inicializa un repositorio Git en el directorio actual.
Clonar un Repositorio Remoto
git clone <url>
Clona un repositorio remoto en tu máquina local.
Gestionar Archivos
Ver el Estado del Repositorio
git status
Muestra los cambios en tu repositorio, como archivos nuevos, modificados o eliminados.
Agregar Archivos al Área de Preparación (Staging)
git add <archivo>
git add .
Agrega uno o más archivos al área de preparación para su confirmación.
Confirmar Cambios (Commit)
git commit -m "Descripción del cambio"
Crea un commit con los cambios agregados al área de preparación.
Eliminar Archivos del Repositorio
git rm <archivo>
Elimina un archivo tanto del repositorio como del sistema de archivos.
Renombrar o Mover Archivos
git mv <archivo_antiguo> <archivo_nuevo>
Renombra o mueve un archivo dentro del repositorio.
Trabajo con Ramas
Crear una Nueva Rama
git branch <nombre_rama>
Crea una nueva rama en el repositorio.
Cambiar de Rama
git checkout <nombre_rama>
Cambia a una rama existente.
Crear y Cambiar de Rama Simultáneamente
git checkout -b <nombre_rama>
Crea una nueva rama y cambia a ella inmediatamente.
Eliminar una Rama
git branch -d <nombre_rama>
Elimina una rama local que ya no necesitas.
Forzar la Eliminación de una Rama
git branch -D <nombre_rama>
Elimina una rama sin importar si no está fusionada.
Sincronización con Repositorios Remotos
Descargar Cambios del Repositorio Remoto
git pull
Combina los cambios del repositorio remoto con tu rama local.
Subir Cambios al Repositorio Remoto
git push
Envía tus commits al repositorio remoto.
Forzar Subida de Cambios
git push --force
Sobrescribe el historial remoto con tus cambios locales (usar con precaución).
Fusionar y Revertir Cambios
Fusionar Ramas
git merge <nombre_rama>
Combina los cambios de una rama en la rama actual.
Revertir un Commit Específico
git revert <id_commit>
Deshace un commit específico creando un nuevo commit que lo revierte.
Resetear el Repositorio a un Estado Anterior
git reset --hard <id_commit>
Restaura el repositorio al commit especificado, eliminando los cambios posteriores.
Seguimiento e Historial
Ver el Historial de Commits
git log
Muestra el historial detallado de commits.
Ver Cambios en Archivos
git diff
Muestra las diferencias entre los archivos modificados y el último commit.
Historial Compacto
git log --oneline
Muestra el historial de commits en una sola línea por commit.
Otros Comandos Útiles
Ignorar Archivos en el Repositorio
Crea un archivo `.gitignore` y agrega los patrones o rutas de los archivos que deseas excluir del seguimiento.
Actualizar la URL de un Repositorio Remoto
git remote set-url origin <nueva_url>
Cambia la URL del repositorio remoto asociado.
Ver los Repositorios Remotos Configurados
git remote -v
Muestra las URL asociadas con los repositorios remotos.
Guardar Cambios Temporalmente (Stash)
git stash
Guarda los cambios no confirmados en un área temporal.
Recuperar Cambios Guardados
git stash apply
Aplica los cambios guardados en el stash.
Estos comandos son el punto de partida para dominar Git. A medida que ganes experiencia, te sentirás cómodo con flujos de trabajo más complejos y colaborativos. Git es una herramienta poderosa que te permite mantener tu código organizado y trabajar eficientemente con otros desarrolladores. ¡Explora y practica!
Git Basics