Python 是否可以使用pip安装最新的标签?
可以使用pip安装特定的标签:Python 是否可以使用pip安装最新的标签?,python,pip,Python,Pip,可以使用pip安装特定的标签: pip install -e git+ssh://git@github.com/{usr}/{repo}.git@{tag}#egg={egg} 然而,我似乎找不到一种方法来指出最新的版本(即发行版/最新的),而不仅仅是主版本的负责人。有可能吗 有一个限制,它必须使用ssh。您不需要进行可编辑的安装(-e): 也应该可以使用。如果您使用的是python软件包,这里有一种方法可以做到这一点: setup.py import setuptools import u
pip install -e git+ssh://git@github.com/{usr}/{repo}.git@{tag}#egg={egg}
然而,我似乎找不到一种方法来指出最新的版本(即发行版/最新的),而不仅仅是主版本的负责人。有可能吗
有一个限制,它必须使用ssh。您不需要进行可编辑的安装(-e
):
也应该可以使用。如果您使用的是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 .
嗯,你为什么不简单地指定标签的确切提交id?@cel commits对它们没有任何意义,而我可以告诉某人安装1.0.3版或其他版本。我不想每次发布一个版本时都要更新我的自述文件,我希望我的用户使用最新版本。很酷的解决方案!问题:为什么不仅仅是标记url.split('/')[-1]
而不是标记url.split('/')[::-1][0]
python -m pip install -e .