In other words, what’s the difference between the mkvirtualenv and mkproject commands?
I have a workflow that looks like this:
/dev
projectA
appA
appB
projectB
appA
appB
All of the apps share some resources (like South, pep8, etc.), but other resources are specific to each app. Should I be using virtualenvwrapper “projects” to keep these dependencies separated?
From my understanding of the documentation,
mkvirtualenv projectenvsimply creates a new virtual environment namedprojectenvin$WORKON_HOME, whilemkproject projectenvcreates a new virtual environment namedprojectenvand a new directory namedprojectenv; after creation, theprojectenvdirectory automatically becomes your current working directory. The virtual environment will exist in$WORKON_HOMEand the development directory exists in$PROJECT_HOME.Note, for
mkprojectto work correctly, you must first set the environment variablePROJECT_HOMEto the name of the directory where you would like projects to be created. You can do this in the same place you set your$WORKON_HOMEvariable or set it up on the fly, e.g.mynewprojectwill now be your current virtual environment and a newmynewprojectdirectory will exist in~/src/allprojects.