05_Unidad5_AdminConfiguracion - vhcontre/inventario-2025 GitHub Wiki

🗂️ Administración de configuración y control de versiones

🎯 Objetivos

  • Comprender el propósito de la administración de configuración de software.
  • Utilizar herramientas de control de versiones (como Git) de manera profesional.
  • Integrar flujos de trabajo con ramas, revisiones y despliegues controlados.

⚙️ ¿Qué es la administración de configuración?

Es un conjunto de procesos y herramientas que aseguran que:

  • Las versiones del software sean rastreables.
  • Los cambios estén documentados y controlados.
  • Se pueda reproducir cualquier versión del sistema.

Incluye:

  • Control de versiones
  • Gestión de ramas y cambios
  • Automatización del despliegue
  • Identificación de configuraciones válidas

🧬 Git: el eje del control de versiones

Git es un sistema distribuido de control de versiones. Permite:

  • Crear snapshots del estado del código (commit)
  • Trabajar en paralelo sin pisar código (branch)
  • Fusionar cambios (merge)
  • Mantener la historia y revertir errores

🚀 Comandos esenciales

git init             # Inicializa un repo
git clone URL        # Clona un repo existente
git status           # Muestra cambios
git add archivo.py   # Prepara archivo para commit
git commit -m "mensaje"  # Registra cambios
git push             # Sube cambios a GitHub
git pull             # Baja cambios del equipo

🌿 Flujo de trabajo sugerido

main ← rama estable (deploy)
│
├── dev ← integración general
│   ├── feat/login
│   ├── feat/productos
│   └── fix/stock

Este flujo permite:

  • Desarrollar nuevas features sin afectar el código estable
  • Probar antes de hacer merge
  • Automatizar integración con CI/CD

🔐 Administración de configuración en la práctica

Elemento En tu proyecto
Código fuente versionado Git + GitHub
Scripts de base de datos Migraciones y fixtures
Variables de entorno .env, FastAPI Settings
Automatización de pruebas GitHub Actions + pytest
Docker y configuraciones Dockerfile, docker-compose.yml

🔄 Relación con la planificación

Semana Aplicación concreta
1 Introducción a Git, GitHub, primer fork
2 Uso de ramas para desarrollo
6 Automatización de pruebas con GitHub Actions
10 Configuración con Docker y simulación de CI/CD

📘 Recursos útiles


📝 Actividades sugeridas

  • Simular un flujo de trabajo con ramas: crear dev, feature/x, bugfix/x
  • Hacer merge a través de Pull Requests (PRs)
  • Agregar un workflow con GitHub Actions que ejecute tests y linting
  • Crear .env.example y explicar su uso

🧠 Cierre

"Controlar la configuración es controlar la calidad. Sin trazabilidad, el caos es inevitable."