2015-05-27 31 views
5

, ben kurulum ayrı virtualenvs ve çağıran workon venv onları özel ayarlar dosyaları (örn. Test_settings.py veya dev_settings.py) Virtualenv yıllarda kancaları kullanarak kaydetmek bağlantı olabilir bin - ön aktivasyonu, postactivate, predeactivate ve postdeactivate.pyenv-virtualenv farklı uygulama ortamları tetikleme virtualenvwrapper ile

Pyenv için eşdeğer bir şey var mı? pyenv-virtualenv, geçerli dizinde .python-version setine dayalı olarak virtualenvs'leri otomatik olarak değiştirir, böylece etkinleştirmeye gerek yoktur ve .pyenv/version/venv/bin/dir, virtualwrapper'ın zaten sahip olduğu kancaların iltifatına sahip değildir.

Çeşitli uygulama ortamlarım için kolayca farklı sanallaştırmalar oluşturabilirim, ancak bunları farklı ortamlara özgü uygulama ayarlarına nasıl bağlarım?

cevap

1

başka yerde bu forum reply okuduktan sonra autoenv ruhu içinde etkinleştirme dosyasına ~/.pyenv/versions/my_venv/bin/activate için ortam değişkeni export something='something-else' komutları ekleyerek sona erdi.

0

İki fikir:

  • bariz bir: pyenv-virtualenvwrapper eklenti pyenv deneyin?

  • $PYENV_ROOT/pyenv.d/<command>'da belirli bir pyenv komutu için kanca ekleyebilirsiniz. Normalde kullanıcı tarafından doğrudan çağrılmayan pyenv’in “porselen” komutları için bile bunu yapabilirsiniz. activate için, değiştirdiğiniz sanal makinenin adını temel alan ayarları değiştiren bir kanca yazabilirsiniz. (sanalenv'e geçerken pyenv-virtualenv örtülü olarak pyenv activate). Not: Pyenv kancaları oluşturdum, ancak activate için değil, bu sadece bir fikir…