それぞれが virtualenvs を使用する多数の python サービスがあります。私は時々これらの環境を再構築し、時間を節約したいと考えています。mkvirtualenv --system-site-packages
私が望むものに近いようですが、まだ理解できない動作があります。
私が使用するパッケージの 1 つは gevent (ベータ版) で、GitHub から直接インストールします: sudo pip install -e git://github.com/surfly/gevent.git@1.0b4#egg=gevent
. これは virtualenv の外で行われるため、システムのsite-packages
. これは正常に動作し、新しい virtualenv を で作成すると--system-site-packages
、存在しているように見えますが、別の rev と Egg が指定されています:
[msherry@hostname:~]$ mkvirtualenv test --system-site-packages
New python executable in test/bin/python2.7
Also creating executable in test/bin/python
Installing setuptools............done.
Installing pip...............done.
[msherry@hostname:~]$ workon test
[msherry@hostname:~]$ pip freeze|grep gevent
-e git://github.com/surfly/gevent.git@15418fc8ff4460069cf42b4b0341969c54455ddd#egg=gevent-dev
ただし、少なくともインストールされているように見えます。ただし、 を実行するpip install -e git://github.com/surfly/gevent.git@1.0b4#egg=gevent
と、gevent の (遅い) インストール プロセスが再び開始され--system-site-packages
ます。
理想的には、要求しているバージョンの gevent が既に存在することを pip が認識し、再度インストールしようとしないようにしたいと考えています。私が試みていることを行う方法はありますか?