Saltar al contenido
VECANOVA LABSCursos gratis

Instala Campus en tu iPhone o iPad

  1. 1.Toca Compartir (en Safari para iOS 26 está dentro del menú ).
  2. 2. Elige Agregar a inicio. Si no lo ves, desliza hacia abajo y toca Ver más.
  3. 3. Toca Agregar. Campus quedará como una app en tu pantalla de inicio.
Lecciones del curso (7)
  1. 01 · Windows con WSL y Linux
  2. 02 · La terminal: bash y zsh
  3. 03 · VS Code y sus extensiones
  4. 04 · Git y GitHub
  5. 05 · Python con uv, venv y pip
  6. 06 · pre-commit y scripting
  7. 07 · Evaluación final del curso

Lección 6 de 7 · 9 min de lectura

pre-commit y scripting

Automatiza la calidad con revisiones que corren solas antes de cada commit y escribe pequeños scripts de terminal que hacen el trabajo repetitivo por ti.

Al terminar esta lección
  • · Configurar pre-commit con Ruff y revisiones básicas en un proyecto
  • · Escribir un script de bash con argumentos y validaciones
  • · Decidir cuándo automatizar con bash y cuándo con Python

Los equipos profesionales no confían en "acordarse" de revisar el código. Lo automatizan: cada vez que alguien intenta registrar un cambio, un conjunto de revisiones corre solo y, si algo falla, el commit no se hace. Con la misma idea, cualquier tarea que repitas cada semana (respaldar, renombrar, limpiar) puede convertirse en un script que la hace en segundos y sin errores.

pre-commit: revisiones antes de cada commit

pre-commit es una herramienta gratuita que instala "ganchos" (hooks) en Git: programas que revisan tus archivos justo antes de cada commit. Instálala una vez con uv:

uv tool install pre-commit

En tu proyecto crea el archivo .pre-commit-config.yaml:

repos:
  - repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v6.0.0
    hooks:
      - id: trailing-whitespace
      - id: end-of-file-fixer
      - id: check-yaml
      - id: detect-private-key
  - repo: https://github.com/astral-sh/ruff-pre-commit
    rev: v0.17.0
    hooks:
      - id: ruff-check
        args: [--fix]
      - id: ruff-format

Qué revisa cada uno:

HookQué hace
trailing-whitespaceQuita espacios sobrantes al final de las líneas
end-of-file-fixerDeja exactamente un salto de línea al final de cada archivo
check-yamlVerifica que los archivos YAML estén bien escritos
detect-private-keyBloquea el commit si encuentra una clave privada
ruff-checkBusca errores y malas prácticas en Python y corrige los que puede
ruff-formatDa formato al código de Python

Actívalo en el repositorio:

pre-commit install

Desde ahora, cada git commit ejecuta las revisiones. Las versiones (rev) cambian con el tiempo: pre-commit autoupdate las actualiza a las últimas publicadas.

Qué pasa cuando algo falla

Si un hook corrige un archivo (por ejemplo, Ruff quita una importación que no usas o arregla el formato), el commit se detiene y verás Failed. No es un drama: el archivo ya quedó corregido. Revisa el cambio, vuelve a prepararlo y repite el commit:

git add -A
git commit -m "Agrega el cálculo de gastos"

Esta vez verás Passed en todas las revisiones y el commit se registra. Si el hook bloquea algo que no puede corregir (como una clave privada), debes resolverlo tú: sacar ese archivo del commit y agregarlo al .gitignore.

Para revisar todo el proyecto sin hacer commit, usa pre-commit run --all-files (revisa los archivos que Git ya tiene registrados o preparados).

Comprueba lo que aprendiste

Intentas hacer commit y ruff-format aparece como Failed porque reformateó un archivo. ¿Qué haces?

Sigue esta clase gratis

Crea tu cuenta en un minuto. Así guardas tu avance y recibes tu certificado gratis al terminar.