package通过pip安装在错误的(src)目录而不是站点包中

Tho*_*mel 10 pip virtualenv virtualenvwrapper

我正在使用virtualenvwrapper 将这个软件包安装到virtualenv中并使用此命令进行pip:

pip install -e git+git://github.com/mr-stateradio/django-exchange.git#egg=django_exchange-master
Run Code Online (Sandbox Code Playgroud)

有趣的是,然后将包放入src文件夹中,而不是放入我期望的site-packages文件夹中.包放在这个文件夹中:

<path-to-my-virtual-env>/testenv/src/django-exchange-master/exchange
Run Code Online (Sandbox Code Playgroud)

而不是这个:

<path-to-my-virtual-env>/testenv/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)

我假设我使用的pip install命令或包的setup.py有问题.

Leo*_*o.Z 17

-e选项告诉pip以" 可编辑 "模式安装软件包.如果删除-e选项,则pip会将软件包安装到<venv path>/lib/Python_version/site-packages.不要忘记删除里面的包<venv path>/src,因为python <venv path>/src首先在里面查找包.

pip支持从Git,Mercurial,Subversion和Bazaar安装,并使用url前缀检测VCS的类型:"git +","hg +","bzr +","svn +".

例如

$ pip install -e git+https://git.repo/some_pkg.git#egg=SomePackage          # from git
$ pip install -e hg+https://hg.repo/some_pkg.git#egg=SomePackage            # from mercurial
$ pip install -e svn+svn://svn.repo/some_pkg/trunk/#egg=SomePackage         # from svn
$ pip install -e git+https://git.repo/some_pkg.git@feature#egg=SomePackage  # from 'feature' branch
Run Code Online (Sandbox Code Playgroud)

VCS项目可以安装在可编辑模式下(使用-editable选项).

  • 对于可编辑安装,默认情况下,克隆位置<venv path>/src/SomeProject位于虚拟环境中,<cwd>/src/SomeProject适用于全局安装.该–src选项可用于修改此位置.
  • 对于不可编辑的安装,项目在temp dir中本地构建,然后正常安装.`