Pregunta

La forma más sencilla de tratar con las instalaciones de paquetes de python, hasta ahora, para mí, ha sido verificar la fuente desde el sistema de control de fuente y luego agregar un enlace simbólico en la carpeta python dist-packages.

Claramente, dado que el control de origen proporciona el control completo para degradar, actualizar a cualquier rama, etiqueta, funciona muy bien.

¿Hay alguna manera de usar uno de los instaladores de paquetes (easy_install o pip u otro), uno puede lograr lo mismo?

easy_install obtiene el tar.gz e instálalo usando la instalación setup.py que se instala en la carpeta dist-packages en python2.6. ¿Hay alguna manera de configurarlo, o pip para utilizar el sistema de control de versión de origen (SVN / GIT / Hg / Bzr) en su lugar.

¿Fue útil?

Solución

Usar pip esto es bastante fácil. Por ejemplo:

pip install -e hg+http://bitbucket.org/andrewgodwin/south/#egg=South

Pip clonará automáticamente el repositorio de origen y ejecutará " setup.py Revelar " para que lo instales en tu entorno (que con suerte es un virtualenv ). Git, Subversion, Bazaar y Mercurial son compatibles.

También puede ejecutar " pip freeze " y generará una lista de sus paquetes instalados actualmente con sus versiones exactas (incluida, para las instalaciones de desarrollo, la revisión exacta del VCS). Puede poner esto directamente en un archivo de requisitos y luego ejecutar

pip install -r requirements.txt

para instalar ese mismo conjunto de paquetes en las mismas versiones exactas.

Otros consejos

Si descarga o comprueba la distribución de origen de un paquete, el que tiene su " setup.py " dentro de él, entonces si el paquete se basa en las "herramientas de configuración" (que también potencia easy_install), puede moverse a ese directorio y decir:

$ python setup.py develop

y creará los enlaces simbólicos correctos en los paquetes dist para que los archivos .py en la distribución fuente sean los que se importan, en lugar de las copias instaladas por separado (que es lo que haría "setup.py install" cree copias separadas que no cambien inmediatamente cuando edite el código fuente para intentar un cambio).

Como indica la otra respuesta, debe intentar leer las "herramientas de configuración" documentación para aprender más. " setup.py desarrollo " Es una característica realmente útil! Intente usarlo en combinación con un virtualenv, y puede " setup.py desarrollar " sin dolor y sin estropear su Python en todo el sistema con paquetes que solo está desarrollando temporalmente:

http://pypi.python.org/pypi/virtualenv

easy_install tiene soporte para descargar versiones específicas. Por ejemplo:

easy_install python-dateutil==1.4.0

Instalará v1.4, mientras que la última versión 1.4.1 se seleccionaría si no se especificara ninguna versión.

También hay soporte para los pagos de svn, pero usarlo no le brinda muchos beneficios de su versión manual. Consulte el manual para obtener más información arriba.

Poder cambiar a ramas específicas rara vez es útil a menos que esté desarrollando los paquetes en cuestión, y de todos modos no es una buena idea instalarlos en paquetes de sitio de todos modos.

easy_install también acepta una URL para el árbol de origen. Funciona al menos cuando las fuentes están en Subversion.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top