Reputation: 14239
I want to use the following directory hierarchy
~/python/project-1
~/python/project-2
~/python/project-3
~/python/virtual-environments/environment-1 (virtual environment base)
~/python/virtual-environments/environment-2 (virtual environment base)
and then use it like this
# project-1 runs inside environment-1
source ~/python/virtual-environments/environment-1/bin/activate
cd ~/python/project-1/
python
.
# project-2 runs inside environment-2
source ~/python/virtual-environments/environment-2/bin/activate
cd ~/python/project-2/
python
.
# project-3 also runs inside environment-1
source ~/python/virtual-environments/environment-1/bin/activate
cd ~/python/project-3/
python
Is this allowed or could this cause some nasty problems?
I ask because it seems that
~/python/virtual-environments/environment-1/ (virtual environment base)
~/python/virtual-environments/environment-1/project-1
~/python/virtual-environments/environment-1/project-3 (not sure if "allowed")
~/python/virtual-environments/environment-2/ (virtual environment base)
~/python/virtual-environments/environment-2/project-2
is the "official" way to do it. I don't want to tie the projects so tightly to the environments and also have multiple projects use the same environment, so it's not really the inside/outside discussion, but a "completely somewhere else" one.
Upvotes: 1
Views: 401
Reputation: 3214
Yes, it's ok. There is even a wrapper for virtualenv called virtualenvwrapper which does similar thing. By default it stores all virtualenvs in ~/.virtualenvs
.
Upvotes: 2