pip安装本地git存储库

Fáb*_*tos 46 python git pip

我找不到使用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'
>>>
Run Code Online (Sandbox Code Playgroud)

正如您所见,pip只是将包复制到了site-packages.如何避免这种情况,并直接从其源文件夹中使用该包?

我正在尝试将django-pipeline集成到我的Django项目中,但我想首先添加对Django 1.4的支持,所以我分叉并克隆了我的fork.

sil*_*eto 108

我也可以使用:

cd your-local-repo
pip install -e .
Run Code Online (Sandbox Code Playgroud)

要么

python setup.py install develop
Run Code Online (Sandbox Code Playgroud)


小智 76

如果你在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认同)

Dan*_*nil 9

您可以通过以下命令使用pippipenv从本地 git 存储库进行安装:

pip install git+file:///path/to/your/package#egg=package-name
Run Code Online (Sandbox Code Playgroud)

请注意,file: here 后面有 3 个斜杠。

要从远程仓库安装,请使用:

pip install git+ssh://git@github.com:Username/Project.git
Run Code Online (Sandbox Code Playgroud)

您还可以像这样指定所需的分支:

pip install git+ssh://git@github.com:Username/Project.git@master
Run Code Online (Sandbox Code Playgroud)

我刚刚收集了Quiltnanounanue以及这个问题的先前答案和评论。也贴在这里