dol*_*a33 117 python django virtualenv
我在virtualenv中有一个现有的环境,有很多软件包,但是有一个旧的Django版本.
如果我想要复制这个环境怎么办,
那么我可以在另一个环境中安装更新的Django版本,
但保留已经在其他环境中的所有软件包?
rde*_*ges 163
最简单的方法是使用pip生成需求文件.需求文件基本上是一个文件,其中包含您要安装的所有python包的列表(或者在pip生成的文件的情况下已安装),以及它们所处的版本.
要生成需求文件,请进入原始virtualenv,然后运行:
pip freeze > requirements.txt
Run Code Online (Sandbox Code Playgroud)
这将为您生成requirements.txt文件.如果您在自己喜欢的文本编辑器中打开该文件,您会看到如下内容:
Django==1.3
Fabric==1.0.1
etc...
Run Code Online (Sandbox Code Playgroud)
现在,编辑说Django==x.x出来的行Django==1.3(或者您要在新的virtualenv中安装的任何版本).
最后,激活您的新 virtualenv,并运行:
pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)
并且pip将自动下载并安装您的requirements.txt文件中列出的所有python模块,无论您指定的版本是什么!
ale*_*cxe 26
另一个选择是使用virtualenv-clone包:
用于克隆不可重定位的virtualenv的脚本.
Ray*_*ond 12
virtualenvwrapper提供复制virtualenv的命令
cpvirtualenv ENVNAME [TARGETENVNAME]
Run Code Online (Sandbox Code Playgroud)
如果您使用的是Anaconda,则只需运行:
conda create --name myclone --clone myenv
Run Code Online (Sandbox Code Playgroud)
这将复制myenv到新创建的名为myclone.
最简单的选择是使用virtualenv-clone包。
要复制venv1到venv2,请按照下列步骤操作:
安装virtualenv-clone在一个venv1或一个虚拟的虚拟环境中venv_dummy。创建venv_dummy:
python -m virtualenv venv_dummy
source venv_dummy/bin/activate
Run Code Online (Sandbox Code Playgroud)安装virtualenv-clone:
(venv_dummy): pip install virtualenv-clone
Run Code Online (Sandbox Code Playgroud)复制venv1到venv2:
(venv_dummy): virtualenv-clone venv1/ venv2/
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
55825 次 |
| 最近记录: |