python - 如何在特定日期从 github pip 安装

标签 python git github

我需要从 git hub 使用 pip 安装,但想要 5 月 4 日的存储库。谁能帮我解决这个问题?

例如,如果我想pip install一个repo的特定分支,我可以使用下面的命令:

pip install https://github.com/user/repo.git@branch

但不知道如何按分支名称以外的日期获取它?

最佳答案

嗯,你可以替换<branch>具有所需的提交 <sha-1> .我刚刚用 bpython 检查了它:

$ pip install --upgrade --user git+https://github.com/bpython/bpython.git@f2014dbae31313571cc9c26f51a14f4fda09d138
Collecting git+https://github.com/bpython/bpython.git@f2014dbae31313571cc9c26f51a14f4fda09d138
  Cloning https://github.com/bpython/bpython.git (to f2014dbae31313571cc9c26f51a14f4fda09d138) to /tmp/.private/alex/pip-tQcJmV-build
  Could not find a tag or branch 'f2014dbae31313571cc9c26f51a14f4fda09d138', assuming commit.
...

另一个问题是如何获得给定日期的提交。

第一个选项是打开浏览器,找到合适的提交并手动为 pip install 形成一个正确的 URL。 .实际上,我在上面的示例中使用了这种方式。

但您可能希望将事情自动化。我会从 github 做一个给定 repo 的本地浅拷贝:

git clone --depth 10 --single-branch --branch master https://github.com/bpython/bpython.git

(只从 bpython 官方仓库的 master 分支最后提交 10 次)

然后,确定什么提交满足日期限制:

COMMITID=$(git rev-list -n 1 --before '2016/04/07 16:36:15 2016 +0000' HEAD)

然后,使用 pip install 中的提交 ID命令:

pip install --upgrade --user git+file:///tmp/.private/alex/bpython@${COMMITID}

关于python - 如何在特定日期从 github pip 安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37129197/

相关文章:

git - 标签和发布有什么区别?

python - 如何将.html文件输出到.doc文件django

python - 导入错误 : No module named rest_framework. 授权 token

git - 如何 merge 回远程分支

git:无法挑选

java - 如何将项目从 Github 同步到 Eclipse

github - AppVeyor 不会使用构建状态更新 GitHub 拉取请求

python - 如何将 json 字符串转换为字典并在键中保存顺序?

python - SCons- *** 未找到 SConstruct 文件

gitignore 文件无法正常工作