217

我正在开发一个 django 应用程序,我正在使用 pip 来管理我的需求。如何安装特定的 git 提交?

就我而言,我需要安装此提交: https ://github.com/aladagemre/django-notification/commit/2927346f4c513a217ac8ad076e494dd1adbf70e1

4

4 回答 4

363

您可以指定提交哈希、分支名称、标签。

对于分支名称和标签,您还可以安装压缩分发。这更快、更高效,因为它不需要克隆整个存储库。GitHub 会自动创建这些包。

哈希:

$ pip install git+git://github.com/aladagemre/django-notification.git@2927346f4c513a217ac8ad076e494dd1adbf70e1

分店名称

用 git

$ pip install git+git://github.com/aladagemre/django-notification.git@cool-feature-branch

或来自源包

$ pip install https://github.com/aladagemre/django-notification/archive/cool-feature-branch.tar.gz

标签

用 git

$ pip install git+git://github.com/aladagemre/django-notification.git@v2.1.0

或来自源包

$ pip install https://github.com/aladagemre/django-notification/archive/v2.1.0.tar.gz

这是一个没有详细记录的功能,但您可以在https://pip.pypa.io/en/latest/topics/vcs-support/找到更多信息

于 2012-12-06T23:29:31.927 回答
25

只需添加以下行,就可以在项目中使用 requirements.txt 文件自动安装 python 包:

package-name -e git+https://github.com/owner/repository.git@branch_or_commit#egg={package-name}

并运行命令行:

$ pip install -r requirements.txt

于 2016-05-23T19:04:25.530 回答
21

对@hugo-tavares 的回答的额外评论:

如果它是私有 GitHub 存储库,则需要使用:

pip install git+ssh://git@github.com/....

在你的情况下:

pip install git+ssh://git@github.com/aladagemre/django-notification.git@2927346f4c513a217ac8ad076e494dd1adbf70e1
于 2015-08-12T21:49:14.447 回答
3

如果你想创建一个 egg 包,你仍然可以使用相同的 @branch_or_commit 附件:pip install git+ssh://git@github.com/myrepo.git@mybranch#egg=myeggscript

于 2017-11-14T22:54:59.990 回答