I donβt see a big problem when transferring your projects, and I think that your five-stage plan is correct, in particular, for steps 3/4/5 (I would combine them), you can handle project dependencies with pip, possibly using requirements files .
Requirement files are text files that tell packages to be installed on your virtual server, including your git projects, which can ultimately be deployed in your virtual environment as development eggs (they bring version control information with them). When you have a req file, this is the question:
pip install -r file.req
so that all necessary packages are installed in your env. As you can see from virtualenv docs, a typical req file will contain something like:
django==1.3.0 -e git://git.myproject.org/MyProject.git
I usually save each project in my own virtualenv, so I can deploy it to the production server in the same way as for local development.
Masci
source share