virtualenv包装器自定义目录?

时间:2014-05-12 05:40:09

标签: python virtualenv virtualenvwrapper

如何在virtualenv包装器中设置某个虚拟环境的位置?

我很高兴我现有的和未来的大多数项目仍然在

之内
~/.virtualenv

但我希望我的Web项目虚拟环境位于我的Web项目文件夹中。

由于

2 个答案:

答案 0 :(得分:4)

我担心那是不可能的。搜索virtualenvs时virtualenvwrapperhard-coded to follow WORKON_HOME。没有干净的方法将特定的虚拟现实指向某个位置。我能想到的唯一解决方法是ln -s - 将你的virtualenv变成WORKON_HOME,这可能不是你想要的。

但是如果你想使用置于任意位置的virtualenv,你可以直接使用virtualenv。显然你丢失了postactivatepredeactivate等钩子,但是替换它们并非不可能。

编辑:环境变量hack

然而,一个hack(正如James Mills所提到的)是在加载某个virtualenv时暂时替换WORKON_HOME。只需在命令(mkvirtualenvworkon等)前加上环境变量覆盖:

$ WORKON_HOME=/where/you/want mkvirtualenv virtualenv_name

virtualenv将在/where/you/want中创建。

答案 1 :(得分:0)

设置env var WORKON_HOME。 e.g:

export WORKON_HOME=$HOME/var/env

您可以在~/.bashrc

中进行设置

此处记录了这些内容:http://virtualenvwrapper.readthedocs.org/en/latest/install.html