Configuring so that pip install can work from github
我们希望使用PIP和GitHub将私有包安装到我们的生产服务器上。这个问题涉及到要成功安装Github repo需要具备哪些功能。
假设下面的命令行(它只验证良好并尝试安装):
1 | pip install git+ssh://git@github.com/BlahCo/search/tree/prod_release_branch/ProductName |
产品名称中需要驻留哪些内容?它是使用sdist选项运行setup.py之后tar文件中通常包含的内容,还是实际的tar.gz文件,或者其他内容?
我在这里问是因为我试过几种不同的方法,但都做不到。感谢您的帮助。
您需要整个python包,其中包含一个
名为
1 2 3 4 5 | foo # the installable package ├── foo │ ├── __init__.py │ └── bar.py └── setup.py |
从Github安装,如:
1 2 3 | $ pip install git+https://github.com/myuser/foo.git@v123 or $ pip install git+https://github.com/myuser/foo.git@newbranch |
更多信息,请访问https://pip.pypa.io/en/stable/reference/pip_install/vcs support
当我不得不从github repo安装时,我遇到了类似的问题,但不想安装git等。
简单的方法是使用包的zip存档。将
1 2 3 4 5 6 7 8 | $ pip install https://github.com/hmarr/django-debug-toolbar-mongo/zipball/master Downloading/unpacking https://github.com/hmarr/django-debug-toolbar-mongo/zipball/master Downloading master Running setup.py egg_info for package from https://github.com/hmarr/django-debug-toolbar-mongo/zipball/master Installing collected packages: django-debug-toolbar-mongo Running setup.py install for django-debug-toolbar-mongo Successfully installed django-debug-toolbar-mongo Cleaning up... |
这样,您就可以使PIP与Github源存储库一起工作。
如果您想使用
1 | git+git://github.com/celery/django-celery.git |
对于"可编辑"安装:
1 | -e git://github.com/celery/django-celery.git#egg=django-celery |
可编辑模式将项目的源代码下载到当前目录中的
克隆目标存储库的方式与克隆任何其他项目的方式相同:
1 | git clone git@github.com:myuser/foo.git |
然后以开发模式安装:
1 2 | cd foo pip install -e . |
您可以更改任何您不想更改的代码,并且使用
此解决方案有两个好处: