可以使用pip来安装特定标签:
pip install -e git+ssh://git@github.com/{usr}/{repo}.git@{tag}#egg={egg}
Run Code Online (Sandbox Code Playgroud)
但是,我似乎无法找到一种方法来指向最新版本(这将是releases/latest),而不仅仅是对主人的HEAD.它可能吗?
一个约束,它必须使用ssh.
如果您使用 python 包,这里是一种方法:
安装程序.py
import setuptools
import urllib.request
deps = [
{
'name': 'gunicorn',
'url': 'github.com/benoitc/gunicorn',
},
]
for i in range(len(deps)):
tag_url = urllib.request.urlopen(f"https://{deps[i]['url']}/releases/latest").geturl()
latest_tag = tag_url.split('/')[-1]
deps[i] = f"{deps[i]['name']} @ git+ssh://{deps[i]['url']}@{latest_tag}"
setuptools.setup(
install_requires=deps,
)
Run Code Online (Sandbox Code Playgroud)
然后将包安装到本地
python -m pip install .
Run Code Online (Sandbox Code Playgroud)