我知道可以使用以下命令从 git 和 pip 安装软件包。
pip install git+git://github.com/author/package.git@master
所以基本上这个新命令应该做的是,
它应该仅通过使用名称或更准确地说,无需我将完整包上传到 git,仅使用它们的名称来安装我本地所需的所有软件包。
所以基本上,我正在尝试使用 git 复制此命令。
点安装 -r 要求.txt
这可能吗?有人做过吗?
示例:要求.txt包含:
pandas==1.0.4
matplotlib==3.2.1
numpy=1.18.5
因此,如果可能的话,git 中的某些内容 setup.py 可以安装该软件包。
import pip
with open('requirements.txt','r') as fh:
for line in fh.readlines():
pip install line
仍然不确定我是否完全理解,这里的目标是什么......
也许您想以某种方式将requirements.txt
文件放在 git 存储库中并使用pip安装它。目标是控制需求版本。
我相信你可以用某种没有代码,只有依赖关系的假 Python 包来实现这种效果。
将以下 2 个文件放在MyDependencies
git 存储库中:
setup.py
#!/usr/bin/env python3
import pathlib
import pkg_resources
import setuptools
with pathlib.Path('requirements.txt').open() as requirements_txt:
install_requires = [
str(requirement)
for requirement
in pkg_resources.parse_requirements(requirements_txt)
]
setuptools.setup(
name='MyDependencies',
version='0.0.0',
install_requires=install_requires,
)
requirements.txt
pandas==1.0.4
matplotlib==3.2.1
numpy=1.18.5
然后可以像这样安装依赖项:
path/to/pythonX.Y -m pip install --upgrade git+git://github.com/username/MyDependencies.git@master
如果我没记错的话,这应该可以解决问题。
参考资料:
- https://stackoverflow.com/a/59971236/11138259