Un gestor de paquetes y proyectos de Python extremadamente rápido, escrito en Rust, que sustituye a pip, virtualenv, pyenv, pipx y más.
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
Activa el entorno virtual del proyecto e instala pip-tools
python -m pip install pip-tools - 2
Compila requirements.in para generar un requirements.txt con las versiones fijadas
pip-compile requirements.in - 3
Sincroniza el entorno virtual para que coincida con requirements.txt
pip-sync
Temas
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
Una herramienta de Python para gestionar entornos virtuales y dependencias que combina pip y virtualenv, y usa Pipfile y Pipfile.lock para obtener compilaciones reproducibles.
Herramienta de Python que empaqueta aplicaciones y sus dependencias en archivos .pex ejecutables, similares a un virtualenv portable.
Herramienta de Python que obtiene las versiones de los paquetes a partir de etiquetas de Git o Mercurial y se integra con setuptools.
Un lanzador de Python que instala paquetes en un entorno temporal para una sola ejecución y luego los elimina.
El instalador estándar de paquetes de Python, que permite instalar paquetes desde Python Package Index (PyPI) y otros índices.