首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >声明从github分支安装的要求

声明从github分支安装的要求
EN

Stack Overflow用户
提问于 2018-05-25 02:08:39
回答 1查看 83关注 0票数 1

将回购的特定分支作为依赖项并将其用于运行测试的正确方法是什么?

如果只指定dependency_links,则setuptools将将其安装为依赖项,但不安装它以运行测试:

代码语言:javascript
运行
复制
setup(
    packages=['utils', 'tokens'],
    dependency_links=[
        'https://github.com/Demonware/jose/tarball/python3#egg=jose-1.1.0'
    ],
    # install_requires=['jose'],
    use_2to3=True,
    test_suite='test_jwt',
    zip_safe=True,
)

我依赖于python3分支的jose库。当我运行setup.py test时,它会抱怨它找不到jose包。

如果我添加install_requires,它只是安装了主分支,而不是我需要的python3分支。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-25 02:29:59

尝试:

代码语言:javascript
运行
复制
dependency_links=[
    'https://github.com/Demonware/jose@python3#egg=jose-1.1.0'
],
install_requires=['jose'],

让我解释一下。pip/setuptools VCS具有以下结构:

代码语言:javascript
运行
复制
git+https://repoURL@reference#egg=project-version

RepoURL是一个VCS存储库URL (在您的例子中是https://github.com/Demonware/jose)。

引用是标记、分支或提交ID (SHA1,可以缩短为7-10个字符);在您的例子中,它是分支python3

#egg=哈希中的项目名称和版本是setuptools将URL识别为以install_requires命名的项目的URL所必需的-- setuptools必须在下载项目之前知道项目名称,因此#egg=哈希是传递该信息的唯一方法。版本并不是绝对必要的,但是对于像install_requires=['jose>=1.1.0']这样的情况,它将是有用的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50520506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档