程序包上传

可以使用 fpm publish 命令将程序包上传至 官方注册表。成功上传后,用户可以搜索此程序包并将其用于自己的项目。但请注意,上传会永久生效。一旦上传了一个程序包,便无法将其删除。如果您想对程序包进行更改,则必须创建一个新版本,并上传该版本。

需要 fpm 0.8.2 及更高版本才能将程序包上传到注册表。

注意

我们当前正在构建和测试注册表。所有上传的程序包将在测试期结束(2023 年 6 月)后删除

先决条件

注册

在上传程序包之前,您需要在官方注册表上拥有一个帐户。您可以通过访问 注册表网站 来创建一个帐户。

名称空间

必须将程序包上传到给定的名称空间。如果您还没有名称空间,您需要先在网站上创建名称空间。用户可以拥有多个名称空间,而一个名称空间可以容纳多个程序包。

令牌

创建名称空间后,您需要生成一个令牌才能将软件包上传到该名称空间。您也可以在网站上执行此操作。令牌用于验证上传并与您的用户名相关联。请勿与他人共享令牌。此外,令牌在一定时间后也会过期。旧令牌过期后,您可以生成一个新令牌。

版本

包必须在其清单中指定有效的 SemVer 版本。

在发布之前,您可以通过运行 fpm publish --show-package-version 来检查包的版本。

许可证

包必须在其清单中指定有效的 SPDX 许可证。

上传权限

如果用户是名称空间的管理员或维护者,或包的维护者,则该用户可以将包上传到名称空间。名称空间管理员可以将名称空间的管理员和维护者权限授予其他用户。名称空间管理员、维护者和包维护者可以授予其他用户特定包的维护者权限。

上传

fpm 将创建一个归档文件,并在满足所有要求后将包上传到注册表。

显示包版本

要检查包的版本,请运行 fpm publish --show-package-version

显示上传数据

通过运行 fpm publish --show-upload-data,您可以在上传之前看到要发送到注册表中的所有数据。如果您在命令行中指定了令牌 (fpm publish --show-upload-data --token <token>),则该令牌将包含在内。不会执行任何网络请求。将创建一个归档文件,您可以在发布之前对其进行检查。

试运行

可通过 fpm publish --token <token> --dry-run 执行一次空运行。它将创建包归档文件并模拟上传,而不会将包发布至注册表。包和令牌将由注册表验证,且您将获得本地创建的包归档的路径以进行检查。通过包含 --verbose 标志,您将能够看到发送到注册表的所有数据。

发布

要发布一个包,使用您在网站中生成的令牌运行 fpm publish --token <token>。您还可以包含 --verbose 标志以查看发送到注册表的所有数据。