回答问题

我无法访问我们用来存储自定义 python 包的 nexus 服务器。我被告知要更改我的~/.pypirc文件和~/.pip/pip.conf文件中的设置。

这两个文件在使用方式上有什么区别?好像pip install -r requirements.txt命令是指pip.conf文件,然后pip.conf文件中的字段需要查找pypirc文件?

示例 pip.conf 文件:

[global]
index = https://user:password@someurl.com/somerepo/pypi-group/pypi
index-url = index = https://user:password@someurl.com/somerepo/pypi-group/simple

pypirc 文件示例:

[distutils]
index-servers =
    pypi
    nexus

[pypi]
repository: https://pypi.org/pypi
username: abc
password: def

[nexus]
repository: https://someurl.com/somerepo/pypi-internal
username: someuser
password: somepassword

另外,pip.conf 文件中的 index 和 index-url 有什么区别?

Answers

.pypirc是多个工具使用的文件标准,但不是pip。例如,easy_install工具读取该文件,twine也是如此。它包含有关如何在发布包时访问特定 PyPI 索引服务器的配置。

另一方面,pip.confonlypip工具使用,pip从不发布包,它从它们下载包。因此,它从不查看.pypirc文件。

如果您不发布包,则不需要.pypirc文件。你不能用它来为pip配置索引服务器。

至于--index-url--index开关,它们用于不同的pip命令。

  • --index-url是几个处理安装包的 pip 命令(pip installpip downloadpip listpip wheel)中的一个常用开关,它是一组开关的一部分(连同--extra-index-url--no-index、zwz1004043 和一些开关) 一起配置包发现的工作方式。 URL 必须指向PEP 503 Simple Repository API位置,默认为https://pypi.org/simple

  • --index仅供pip search使用;它只需要这一条信息。它被单独命名是因为它应该指向公共搜索网络界面,而不是简单的存储库!对于https://pypi.org,即https://pypi.org/pypi

Logo

学AI,认准AI Studio!GPU算力,限时免费领,邀请好友解锁更多惊喜福利 >>>

更多推荐