6

我提前道歉,因为这似乎是一个基本问题......

我正在尝试学习使用 mujoco(链接在这里),并且在它的 python 绑定 Makefile 中它有:

upload:
   rm -rf dist
   python setup.py sdist
   twine upload dist/*

命令有什么作用twin upload dist/*?此外,这要求我输入这样的用户名和密码:

Uploading distributions to https://pypi.python.org/pypi
Enter your username: guest
Enter your password: 
Uploading mujoco-py-0.5.7.tar.gz
HTTPError: 401 Client Error: You must be identified to edit package information for url: https://pypi.python.org/pypi
Makefile:2: recipe for target 'upload' failed

这是在询问我的计算机用户名和密码吗?

4

1 回答 1

7

Twine是一个常用的系统,用于将项目构建上传到PyPI(Python 包索引)。

它将负责将项目的构建工件以 wheel、sdist 等格式安全地传输到 PyPI 或其他一些用户定义的索引服务器。

当您指定时twine upload <files>,twine 将尝试将所述文件上传到 PyPI,但为此,它需要您进行身份验证。这是因为 PyPI 想要保护一个项目不让他们的广告包被一个不擅长的人“劫持”。为了继续执行此步骤,您必须提供标记为对您上传的项目工件所属的项目具有权威性的凭据。

看起来 mujoco 项目Makefile包含一个目标,可通过使用 Twine 应用程序轻松将项目更新上传到 PyPI。该目标仅供软件包维护者使用。

哦,如果您想知道,该python setup.py sdist命令是生成可以上传到 PyPI 的源代码工件的原因。它将将此工件./build/作为project-name_version.tar.gz.

于 2017-06-09T02:36:06.133 回答