Volver a recursos del Bloque 5

CÁPSULA DE BASE

Git y secretos

Versiona cambios con intención y protege las claves que usan tus servicios.

Objetivo técnico

Al terminar podrás versionar una configuración reproducible sin publicar claves. En RAG manejarás credenciales del modelo y de la base de datos; una clave filtrada puede exponer datos y generar costos.

Antes de empezar

Necesitas Git y una carpeta de práctica. Verifica con git --version. Usaremos valores falsos: nunca pegues una API key real en el ejercicio.

Paso a paso

  1. Inicializa el repositorio y crea los archivos de entorno:
git init
touch .env .env.example .gitignore
  1. En .env, escribe OPENAI_API_KEY=valor-local-falso.
  2. En .env.example, escribe OPENAI_API_KEY=. Este archivo documenta la variable sin revelar su valor.
  3. En .gitignore, agrega .env.
  4. Ejecuta git status. Debes ver .env.example y .gitignore, pero no .env.
  5. Ejecuta git check-ignore -v .env para identificar la regla exacta que lo ignora.
  6. Agrega solo los archivos seguros con git add .env.example .gitignore.

Verificación

Ejecuta git diff --cached. La salida no debe contener valor-local-falso. Esa inspección es el gate antes del commit.

Errores frecuentes

  • .env aparece en git status: falta la regla o el nombre no coincide.
  • Agregaste la clave antes de ignorarla: .gitignore no afecta archivos ya rastreados; quítalo del índice y rota cualquier clave real.
  • Copiaste valores a .env.example: ese archivo sí se publica.

Práctica

Agrega SUPABASE_URL y SUPABASE_ANON_KEY a ambos archivos, pero deja vacíos los valores del ejemplo. Sin mirar, usa git check-ignore y git diff --cached para demostrar que el secreto queda fuera.

Puente al RAG

El Bloque 5 necesita claves para embeddings y Postgres. Este patrón permite que otra persona clone el proyecto, sepa qué configurar y no reciba tus credenciales.

Fuente primaria

gitignore — documentación oficial de Git