terminal

Portafolio

arrow_backVolver a las guías
calendar_today10 de Junio, 2026schedule7 min de lecturaFácil

Guía de Git: Buenas Prácticas y Commits Semánticos

Guía completa sobre nomenclatura de ramas, estructura de commits semánticos bajo el estándar Conventional Commits y el flujo de trabajo diario recomendado en Git.

#Git#Buenas Prácticas

🚀 Guía de Git: Nomenclatura de Ramas, Commits Semánticos y Flujo de Trabajo Diario

Esta guía recopila las mejores prácticas para estructurar tus commits y ramas en Git, utilizando estándares como Conventional Commits y flujos de trabajo organizados para facilitar la colaboración y el mantenimiento del código en tus proyectos.


🌿 1. Nomenclatura de Ramas (Git Branching)

Estructurar el nombre de tus ramas ayuda a identificar inmediatamente su propósito. Se recomienda utilizar prefijos seguidos de una descripción corta usando guiones (kebab-case).

Tipos de Ramas Comunes

Prefijo Propósito / Uso Ejemplos
feature/ Desarrollo de una nueva funcionalidad. feature/create-league, feature/player-image-upload
fix/ Corrección de un error o bug en la aplicación. fix/league-null-id, fix/login-auth-error
refactor/ Cambios en el código que no añaden funcionalidades ni arreglan bugs. refactor/prisma-schema, refactor/clean-auth-logic
chore/ Tareas de mantenimiento, configuración de dependencias o scripts. chore/docker-compose, chore/setup-eslint
docs/ Cambios únicamente en la documentación (ej. README). docs/readme-api, docs/setup-instructions
test/ Añadir o modificar pruebas unitarias o de integración. test/auth-service, test/components-render

💬 2. Commits Semánticos (Conventional Commits)

Un buen mensaje de commit debe explicar qué se hizo y por qué, no cómo (eso lo muestra el código). El estándar de commits semánticos sigue la estructura:

<tipo>: <descripción en minúscula y presente imperativo>

Tipos de Commit

  • feat: Una nueva funcionalidad para el usuario (se alinea con feature/).
  • fix: Solución de un error (se alinea con fix/).
  • refactor: Reorganización del código sin cambiar su comportamiento externo.
  • docs: Cambios en la documentación.
  • style: Cambios que no afectan el significado del código (formato, espacios en blanco, comillas, punto y coma, linting).
  • test: Añadir pruebas faltantes o corregir pruebas existentes.
  • chore: Cambios en el proceso de construcción, herramientas auxiliares y librerías/dependencias (ej. actualizar webpack, npm packages, etc.).

🔄 3. Flujo de Trabajo Diario (Git Workflow)

A continuación, se describen los flujos de trabajo comunes para el día a día.

Flujo A: Creación de una Nueva Funcionalidad o Tarea

Cuando vas a iniciar una nueva tarea, es fundamental partir de la versión más reciente del código estable (main).

  1. Asegurar que estás en la rama principal y actualizada:
    git checkout main
    git pull origin main
    
  2. Crear y cambiar a tu nueva rama de trabajo:
    git checkout -b feature/nueva-funcionalidad
    
  3. Trabajar en los archivos del proyecto...
  4. Verificar los archivos modificados:
    git status
    
  5. Preparar y confirmar tus cambios (Crear el Commit):
    git add .
    git commit -m "feat: implementar el buscador interactivo de guías"
    
  6. Subir tu rama al repositorio remoto (GitHub) por primera vez: El parámetro -u (o --set-upstream) asocia tu rama local con la remota permanentemente.
    git push -u origin feature/nueva-funcionalidad
    

Flujo B: Tareas de Mantenimiento o Documentación

El mismo flujo aplica para configuraciones, setup de integraciones o cambios en el README.

  1. Actualizar la rama principal y crear la rama correspondiente:
    git checkout main
    git pull origin main
    git checkout -b chore/github-standards
    
  2. Agregar y editar archivos: Puedes especificar qué archivos deseas agregar en lugar de usar git add . para evitar subir basura.
    git add CONTRIBUTING.md .github/
    
  3. Commit y Push:
    git commit -m "docs: add contributing guide and PR template"
    git push -u origin chore/github-standards
    

Flujo C: Realizar Correcciones en una Rama Existente

Si te hacen observaciones en un Pull Request o encuentras un bug mientras trabajas en tu rama activa, no necesitas crear otra rama nueva; simplemente corrige los cambios sobre la misma rama.

  1. Asegurarte de estar en la rama en la que estás trabajando:
    git checkout chore/github-standards
    
  2. Realizar las correcciones necesarias en tu editor.
  3. Agregar los archivos modificados:
    git add .
    
  4. Hacer un commit descriptivo de la corrección:
    git commit -m "fix: fix CI pipeline validation rule"
    
  5. Subir los cambios: Dado que la rama ya está asociada al servidor remoto (upstream), solo necesitas escribir git push.
    git push
    

🛠️ 4. Comandos de Git Esenciales para el Día a Día

Aquí tienes un resumen de los comandos que más utilizarás:

Comando Descripción
git status Muestra el estado del directorio de trabajo y del área de preparación (staging).
git diff Muestra las diferencias de líneas entre el código modificado y el último commit.
git log --oneline -n 10 Muestra los últimos 10 commits del proyecto en una sola línea por commit.
git checkout <nombre-rama> Cambia a una rama existente.
git checkout -b <nombre-rama> Crea una nueva rama y cambia a ella inmediatamente.
git restore <archivo> Desecha los cambios locales no confirmados de un archivo específico.
git reset HEAD~1 Deshace el último commit local manteniendo tus cambios como archivos modificados listos para volver a guardar.
git stash Guarda temporalmente tus cambios locales no confirmados para limpiar tu directorio y poder cambiar de rama sin perder nada.
git stash pop Recupera y aplica tus cambios guardados temporalmente en el último stash.