python3 force crear change activate python django virtualenv

python - force - Duplicado virtualenv



virtualenv python pip (5)

Tengo un entorno existente en virtualenv, con muchos paquetes, pero una versión antigua de Django.

¿Qué sucede si quiero duplicar este entorno?
entonces puedo tener otro entorno en el que pueda instalar una versión Django más nueva,
pero manteniendo todos los paquetes que ya están en el otro entorno?


¿No puedes simplemente:

  • Copie el directorio env virtual existente a uno nuevo
  • ¿Actualizar al nuevo Django?

La forma más fácil es usar pip para generar un archivo de requisitos. Un archivo de requisitos es básicamente un archivo que contiene una lista de todos los paquetes de Python que desea instalar (o ya se ha instalado en el caso de un archivo generado por pip), y en qué versiones están.

Para generar un archivo de requisitos, vaya a su documento original y ejecute:

pip freeze > requirements.txt

Esto generará el archivo requirements.txt para usted. Si abre ese archivo en su editor de texto favorito, verá algo como:

Django==1.3 Fabric==1.0.1 etc...

Ahora, edite la línea que dice Django==xx para decir Django==1.3 (o la versión que quiera instalar en su nuevo virtualenv).

Por último, active su nuevo virtualenv y ejecute:

pip install -r requirements.txt

¡Y pip descargará e instalará automáticamente todos los módulos de python listados en su archivo requirements.txt , en las versiones que haya especificado!


Otra opción es usar el paquete virtualenv-clone :

Un script para clonar un virtualenv no reubicable.


Si está usando Anaconda , puede ejecutar:

conda create --name myclone --clone myenv