Virtualenv 是一个 python 结构,它包含一组特定的包,与您的系统包分开。操作系统附带或单独安装的 Python 版本及其包是“系统包”。
Virtualbox 完全不同——它是一个虚拟机,一个盒子里的整个操作系统。
我对流浪者不熟悉。
你所需要的只是virtualenv。为每个项目创建一个新的 virtualenv(它们非常轻量级!)您需要这样做,因为 virtualenv 的全部目的是隔离您的项目所需的这些包的确切包和版本。然后激活 virtualenv 并使用pip install来安装你需要的包,大概是从 Django 本身开始的。
获得所需的所有包后,使用pip freeze > requirements.txt创建一个名为 requirements.txt 的文件,该文件记录您决定使用的所有包。
当其他人在您的项目上进行协作时,他们可以启动一个 virtualenv,将您的代码拉入其中,然后运行pip install -r requirements.txt以复制您的环境。他们甚至可以修改 requirements.txt,通过您的版本控制系统将其推送给您,您可以运行pip install -r requirements.txt自己来修改您的环境以匹配他们的更改。
这一切都是必不可少的,因为如果没有 virtualenv,例如在您的计算机上拥有一个需要 Django 1.4 的项目和一个需要 Django 1.5 的项目,问题就会变得非常复杂。
Virtualenv 不是一个盒子里的整个操作系统,只是一个 python 环境,所以即使你在使用它,你仍然在本地机器上工作。