将virtualenv与遗留的Django项目结合使用

Dar*_*ech 8 django pip virtualenv

我终于开始在我的开发机器上为我的Django项目使用virtualenv了.在开始之前,我想知道处理现有项目是否有任何特殊注意事项.我推测的工作流程如下:

  1. 做一个新的virtualenv
  2. 激活新的virtualenv
  3. 在那里安装Django
  4. pip安装我知道我现有项目所需的所有软件包
  5. 将我的Django项目文件,应用程序文件和git文件复制到virtualenv中的项目文件夹中.

编辑 6.制作需求文件以进行部署

这显然非常简化,但是我有什么步骤或考虑从根本上缺失?移动会让git感到高兴吗?对于每个Django项目,还有一个单独的virtualenv最佳实践吗?

我知道这不是一个典型的代码问题,但我希望那些比我更了解的人可以指出我正确的方向.

非常感谢.

Mas*_*sci 6

我没有看到任何关于迁移项目的大问题,我认为你的5步计划是正确的,特别是对于步骤3/4/5(我合并它们),你可以用pip处理项目依赖性,可能使用需求文件.

需求文件是纯文本文件,告诉你必须在你的virtualenv中安装哪些软件包,包括你的git跟踪项目,这些项目最终可以作为开发蛋(它们带有版本控制信息)在你的虚拟环境中部署.一旦你有一个req文件,这是一个问题:

pip install -r file.req
Run Code Online (Sandbox Code Playgroud)

在您的环境中安装所有需要的软件包.从virtualenv docs可以看出,典型的req文件包含如下内容:

django==1.3.0
-e git://git.myproject.org/MyProject.git#egg=MyProject
Run Code Online (Sandbox Code Playgroud)

我通常将每个项目保留在自己的virtualenv中,因此我可以像在本地开发中一样将其部署到生产服务器.