我找不到使用pip将本地目录安装为python包的正确方法。
(venv) C:\(...)>pip install . --no-index
Ignoring indexes: http://pypi.python.org/simple/
Unpacking c:\users\fsantos\desktop\biskates.com\biskates\forks\django-pipeline
Running setup.py egg_info for package from file:///(...)%5Cforks%5Cdjango-pipeline
Installing collected packages: django-pipeline
Running setup.py install for django-pipeline
Successfully installed django-pipeline
Cleaning up...
(venv) C:\(...)>cd ..
(venv) C:\(...)>python
Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pipeline
>>> pipeline.__file__
'C:\\(...)site-packages\\pipeline\\__init__.py'
>>>
正如您所见,pip只是将包复制到了site-packages。如何避免这种情况,并直接从其源文件夹中使用包?
我正在尝试将django-pipeline集成到我的Django项目中,但我想首先添加对Django 1.4的支持,所以我分叉并克隆了我的分支。
答案 0 :(得分:98)
我也可以使用:
cd your-local-repo
pip install -e .
或
python setup.py install develop
答案 1 :(得分:70)
如果你在venv工作,你可以这样做:
env / bin / pip install git + file:/// path / to / your / git / repo
或者有一个分支:
env / bin / pip install git + file:/// path / to / your / git / repo @ mybranch
答案 2 :(得分:8)
您可以将 pip 或 pipenv 与以下命令配合使用,以从本地git repo安装:
pip install git+file:///path/to/your/package#egg=package-name
请注意,文件后有3个斜杠:此处。
要从远程存储库安装,请使用:
pip install git+ssh://git@github.com:Username/Project.git
您还可以像这样指定所需的分支:
pip install git+ssh://git@github.com:Username/Project.git@master
我刚刚对Quilt和nanounanue和this question的先前答案和评论进行了汇总。还发布了它here。
答案 3 :(得分:-4)
pip
的工作原理是将软件包安装到site-packages
。如果您只想定期import
您的模块,您只需要将目录路径添加到PYTHONPATH
环境变量中。