Je ne sais pas où je devrais mettre mes virtualenvs.
Avec mon premier projet django, j'ai créé le projet avec la commande
django-admin.py startproject djangoproject
J'ai ensuite cd dans le répertoire djangoproject et ai exécuté la commande
virtualenv env
qui a créé le répertoire d'environnement virtuel au même niveau que le djangoproject
répertoire interne .
Est-ce le mauvais endroit pour créer le virtualenv pour ce projet particulier?
J'ai l'impression que la plupart des gens gardent tous leurs virtualenv ensemble dans un répertoire complètement différent, par exemple ~/virtualenvs
, et utilisent ensuite virtualenvwrapper pour basculer entre eux.
Existe-t-il une manière correcte de procéder?
Changer l'emplacement du répertoire virtualenv le casse
C'est un avantage de placer le répertoire en dehors de l'arborescence du référentiel, par exemple sous
~/.virtualenvs
avecvirutalenvwrapper
.Sinon, si vous le gardez dans l'arborescence du projet, le déplacement de l'emplacement du projet cassera le virtualenv.
Voir: Renommer un dossier virtualenv sans le casser
Il y en a,
--relocatable
mais on sait que ce n'est pas parfait.Un autre avantage mineur: vous n'y êtes pas obligé
.gitignore
.Les avantages de le mettre gitignored dans l'arborescence du projet lui-même sont:
la source
L'endroit généralement accepté pour les placer est le même endroit que l'installation par défaut de virtualenvwrapper les place:
~/.virtualenvs
Connexes: virtualenvwrapper est un excellent outil qui fournit des raccourcis pour les commandes virtualenv courantes. http://www.doughellmann.com/projects/virtualenvwrapper/
la source
Si vous utilisez
pyenv install Python
, pyenv-virtualenv sera une meilleure pratique. Si le.python-version
fichier est défini , il peut activer ou désactiver automatiquement l'environnement virtuel lorsque vous changez de dossier de travail.Pyenv-virtualenv
mettez également tous les env virtuels dans le$HOME/.pyenv/versions
dossier.la source
D'après mon expérience personnelle, je recommanderais d'organiser tous les environnements virtuels dans un seul répertoire. À moins que quelqu'un ait une mémoire extrêmement précise et puisse se souvenir des fichiers / dossiers dispersés dans le système de fichiers. Pas un grand fan de l'utilisation d'autres outils juste pour gérer des environnements virtuels. Dans VSCode, si je configure le
python.venvPath
répertoire ( ) contenant tous les environnements virtuels, il peut tous les reconnaître automatiquement.la source