Skip to main content
El archivo requirements.txt es el estándar de la industria para especificar y gestionar dependencias en proyectos Python. Esta guía muestra cómo crear, configurar y usar requirements.txt para garantizar la consistencia entre los entornos de desarrollo y producción.

¿Qué es un archivo requirements.txt?

Un archivo requirements.txt lista todos los paquetes externos de Python que tu proyecto necesita, con sus versiones específicas. Esto permite:
  • Que tú y tu equipo mantengan entornos idénticos
  • Que los nuevos colaboradores reproduzcan el entorno exactamente
  • Que el deploy en Square Cloud funcione con las dependencias correctas

1

Crea y activa un entorno virtual

Trabajar dentro de un entorno virtual es esencial para mantener las dependencias de tu proyecto aisladas del sistema Python global. Esto evita conflictos de versiones y garantiza la reproducibilidad.Crea el entorno virtual en la raíz de tu proyecto (usa python3 si no se encuentra python en macOS/Linux):
Actívalo con uno de los comandos de abajo, según tu sistema:Windows:
macOS/Linux:
Después instala los paquetes que usa tu proyecto, por ejemplo:
2

Lista las dependencias del proyecto

Especifica siempre versiones exactas con == para garantizar la reproducibilidad y evitar rupturas causadas por actualizaciones incompatibles en producción.

Opción A: Generarlo con pip freeze (Recomendado)

Con el entorno virtual activado, escribe en el archivo cada paquete instalado y su versión exacta:
Dentro de un entorno virtual, pip freeze lista solo los paquetes instalados en él (tus dependencias y sus subdependencias), ya fijados con ==.
Fuera de un entorno virtual, pip freeze lista todos los paquetes instalados en tu sistema. Revisa el archivo y elimina lo que tu proyecto no usa.

Opción B: Crearlo manualmente

Crea un archivo requirements.txt en la raíz de tu proyecto y lista los paquetes que usa tu proyecto, con sus versiones:
requirements.txt
3

Revisa y valida las dependencias

Abre el archivo requirements.txt en tu editor de texto y:
  1. Revisa la lista de paquetes
  2. Elimina las dependencias innecesarias
  3. Actualiza las versiones según sea necesario
  4. Asegúrate de usar versiones exactas (con ==)
4

Instala las dependencias

Para instalar todas las dependencias listadas:
Este comando garantiza que todos los colaboradores y los entornos de producción usen exactamente las mismas versiones.
5

Versiona y comparte

Con requirements.txt listo, puedes:
  • Compartirlo con tu equipo
  • Ponerlo bajo control de versiones (git)
  • Asegurar que todos trabajen con las mismas versiones
  • Simplificar el deployment en Square Cloud
Cuando alojas tu proyecto en Square Cloud, el archivo requirements.txt se detecta automáticamente y sus dependencias se instalan con pip install -r requirements.txt antes de que tu app inicie.

Buenas prácticas y consejos

  • Mantenlo actualizado: Revisa y actualiza requirements.txt con regularidad a medida que añades nuevas dependencias
  • Usa versiones exactas: Usa siempre == en lugar de >, >= o ninguna versión para evitar sorpresas en producción
  • Revisa pip freeze: Si usas pip freeze, revisa el archivo antes de confirmarlo, ya que puede incluir paquetes auxiliares innecesarios
  • Control de versiones: Confirma requirements.txt en git para rastrear los cambios de dependencias
  • Entorno aislado: Mantén un entorno virtual por proyecto para evitar conflictos globales
  • Prueba localmente: Antes de hacer el deploy, prueba el archivo con pip install -r requirements.txt en un entorno nuevo

Próximos pasos

Con tu archivo requirements.txt configurado:
  1. Haz commit en tu repositorio Git.
  2. Aloja tu proyecto con la guía del runtime de Python, o sigue una guía de framework: Django, Flask o FastAPI.
  3. Haz deploy automático desde GitHub en cada push.