我想使用Django并创建虚拟环境。我不太了解virtualenvwrapper网站上的初始化步骤文档。我在/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages中安装了virtualenvwrapper。我已经安装了XCode,Homebrew和Posgres。
文档告诉我:
$ export WORKON_HOME =〜/ Envs
$ mkdir -p $ WORKON_HOME
$ source /usr/local/bin/virtualenvwrapper.sh
$ mkvirtualenv env1`
我对第一行感到特别困惑。它是否告诉我需要创建名为'WORKON_HOME'的项目文件夹并将其导出到另一个名为'Envs'的文件夹中? (我在我的Mac上搜索了两个文件夹,但没找到它们)。然后在第二行我创建另一个目录'WORKON_HOME'? 如果您有更好的解释/教程的建议或链接,我将不胜感激。谢谢。
答案 0 :(得分:3)
将这3行放在~/.bash_profile
文件中: -
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/work
source `which virtualenvwrapper.sh`
$HOME
环境变量指向用户的家。也称为tilda“〜”,即/Users/your_osx_username/
。
WORKON_HOME
是您在export
文件中使用~/.bash_profile
调用分配的新环境变量。这是保存所有新创建的virtualenv目录的地方。
PROJECT_HOME
是您通常手动放置所有自定义项目目录的位置。与你的virtualenvs无关,但只是一个简单的参考点,你可以使用cd $PROJECT_HOME
语法。
which virtualenvwrapper.sh
指向bash脚本virtualenvwrapper.sh
所在的位置,因此当您获取该bash脚本时,该bash脚本中的函数可用于mkvirtualenv
次调用。
无论何时打开“新shell”(新选项卡,在首次更新~/.bash_profile
文件后关闭当前选项卡),所有这些环境变量和bash函数都可以在shell中使用。
当我们使用mkvirtualenv -p python2.7 --distribute my_new_virtualenv_1
创建一个新的virtualenv时,实际发生的是一个名为my_new_virtualenv_1
的新目录,其中包含一个指向全局python2.7的符号链接,并且新的python site-packages sub -directory在~/.virtualenvs/
目录中创建。参考: -
calvin$ mkvirtualenv -p python2.7 --distribute my_new_virtualenv_1
Running virtualenv with interpreter /opt/local/bin/python2.7
New python executable in my_new_virtualenv_1/bin/python
Installing distribute..........................................................................................................................................................................................................done.
Installing pip................done.
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/predeactivate
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/postdeactivate
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/preactivate
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/postactivate
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/get_env_details
所以,如果你这样做
cd ~/.virtualenvs/my_new_virtualenv_1
calvin$ tree -d
.
├── bin
├── include
│ └── python2.7 -> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7
└── lib
└── python2.7
├── config -> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config
├── distutils
├── encodings -> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/encodings
├── lib-dynload -> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload
└── site-packages
├── distribute-0.6.28-py2.7.egg
│ ├── EGG-INFO
│ └── setuptools
│ ├── command
│ └── tests
├── pip-1.2.1-py2.7.egg
│ ├── EGG-INFO
│ └── pip
│ ├── commands
│ └── vcs
└── readline
您将在其中看到此目录结构。
当然注意您正在使用Envs
并且我使用.virtualenvs
作为虚拟环境保存目录。