Repolode
pypa

pypa/pip-tools

Conjunto de herramientas de línea de comandos (pip-compile y pip-sync) que fija dependencias de Python en archivos de requisitos reproducibles y mantiene los entornos sincronizados con ellos.

Estrellas
8,003
Forks
686
Issues abiertos
174
Último commit
hace 20 horas

¿Qué es?

pip-tools ayuda a los proyectos de Python a mantener actualizadas las dependencias fijadas sin perder la previsibilidad de las compilaciones. pip-compile lee las dependencias de pyproject.toml, setup.py, setup.cfg o un archivo requirements.in y genera un requirements.txt con versiones fijadas para todas las dependencias transitivas, con la opción de generar hashes para el modo de verificación de hashes de pip.

pip-sync toma un archivo de requisitos compilado e instala, actualiza o desinstala paquetes en el entorno virtual actual para que coincida exactamente con el archivo. Las actualizaciones pueden aplicarse a todos los paquetes o solo a algunos, y los archivos de requisitos organizados por capas pueden imponerse restricciones entre sí para mantener coherentes las versiones fijadas de desarrollo y producción.

Las herramientas se instalan con pip en cada entorno virtual, y el proyecto señala que los archivos de versiones fijadas deben generarse por separado para cada entorno de Python de destino.

Funciones clave

  • 01Compila archivos requirements.txt con versiones fijadas a partir de pyproject.toml, setup.py, setup.cfg o requirements.in.
  • 02Incluye dependencias transitivas e indica qué paquete requiere cada versión fijada.
  • 03Genera hashes sha256 para el modo de verificación de hashes de pip con --generate-hashes.
  • 04Actualiza todos los paquetes o solo algunos con --upgrade y --upgrade-package.
  • 05Sincroniza un entorno virtual para que coincida exactamente con un archivo de requisitos mediante pip-sync.
  • 06Admite archivos de requisitos organizados por capas que se imponen restricciones entre sí.

Casos de uso

  • Fijar las dependencias de una aplicación para obtener compilaciones de producción reproducibles.
  • Mantener estable el entorno de CI de una biblioteca y actualizar las versiones fijadas de forma deliberada.
  • Mantener conjuntos de requisitos separados para producción y desarrollo con restricciones compartidas.
  • Ejecutar pip-compile como hook de pre-commit para regenerar las versiones fijadas cuando cambien las entradas.

Inicio rápido

  1. 1

    Activa el entorno virtual del proyecto e instala pip-tools

    python -m pip install pip-tools
  2. 2

    Compila requirements.in para generar un requirements.txt con las versiones fijadas

    pip-compile requirements.in
  3. 3

    Sincroniza el entorno virtual para que coincida con requirements.txt

    pip-sync

Temas

#python#dependency-management#pip#requirements#lockfile#packaging#hashes#pip-compile#pip-tools#setuptools

Preguntas frecuentes

¿Qué es pip-tools?
Conjunto de herramientas de línea de comandos (pip-compile y pip-sync) que fija dependencias de Python en archivos de requisitos reproducibles y mantiene los entornos sincronizados con ellos. pip-tools ayuda a los proyectos de Python a mantener actualizadas las dependencias fijadas sin perder la previsibilidad de las compilaciones. pip-compile lee las dependencias de pyproject.toml, setup.py, setup.cfg o un archivo requirements.in y genera un requirements.txt con versiones fijadas para todas las dependencias transitivas, con la opción de generar hashes para el modo de verificación de hashes de pip.
¿pip-tools es gratuito? ¿Qué licencia tiene?
pip-tools es open source bajo la licencia BSD-3-Clause. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿pip-tools sigue mantenido?
Mantenimiento activo. El último commit de pip-tools fue el 6 nov 2026.
¿Para qué puedo usar pip-tools?
Fijar las dependencias de una aplicación para obtener compilaciones de producción reproducibles. Mantener estable el entorno de CI de una biblioteca y actualizar las versiones fijadas de forma deliberada. Mantener conjuntos de requisitos separados para producción y desarrollo con restricciones compartidas. Ejecutar pip-compile como hook de pre-commit para regenerar las versiones fijadas cuando cambien las entradas.
¿Cómo se instala pip-tools?
Activa el entorno virtual del proyecto e instala pip-tools: python -m pip install pip-tools Compila requirements.in para generar un requirements.txt con las versiones fijadas: pip-compile requirements.in Sincroniza el entorno virtual para que coincida con requirements.txt: pip-sync
¿Dónde consigo pip-tools?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/pypa/pip-tools

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados