首页 > 解决方案 > 使用 python pip install git+git 设置本地 Python 环境

问题描述

我知道可以使用以下命令从 git 和 pip 安装软件包。

pip install git+git://github.com/author/package.git@master

所以基本上这个新命令应该做的是,

它应该在我的本地安装所有必需的包,只需使用名称或更准确地说,无需我将完整的包上传到 git,只有它们的名称。

所以基本上,我试图用 git 复制这个命令。

pip install -r requirements.txt

这甚至可能吗?有人做过吗?

示例:Requirements.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

标签: pythonpython-3.xgitpython-2.7pip

解决方案


仍然不确定我是否完全理解,这里的目标是什么......

也许您想以某种方式将文件放在 git 存储库中并使用piprequirements.txt安装它。目标是控制需求版本。

我相信你可以使用某种没有代码,只有依赖项的假 Python 包来达到这种效果。

将以下 2 个文件放在MyDependenciesgit 存储库中:

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

如果我没记错的话,这应该可以解决问题。

参考资料


推荐阅读