是否可以使用pip来安装最新的标签?

时间:2015-11-17 11:36:10

标签: python pip

可以使用pip来安装特定标签:

pip install -e git+ssh://git@github.com/{usr}/{repo}.git@{tag}#egg={egg}

然而,我似乎无法找到一种方法来指向最新版本(这将是releases/latest),而不仅仅是指向主人的HEAD。它有可能吗?

一个约束,它必须使用ssh。

2 个答案:

答案 0 :(得分:0)

您无需进行可编辑安装(-e):

pip install git+ssh://git@github.com/{usr}/{repo}.git@{tag}

也应该有效。

答案 1 :(得分:0)

如果您使用的是python软件包,这是执行此操作的一种方法:


setup.py

import setuptools
import urllib.request


deps = [
    {
        'name': 'gunicorn',
        'url': 'https://github.com/benoitc/gunicorn',
    },
]

for i in range(len(deps)):
    tag_url = urllib.request.urlopen(f"{deps[i]['url']}/releases/latest").geturl()
    latest_tag = tag_url.split('/')[::-1][0]
    deps[i] = f"{deps[i]['name']} @ git+{deps[i]['url']}@{latest_tag}"

setuptools.setup(
    install_requires=deps,
)


然后在本地安装软件包

python -m pip install -e .