入门 The Cargo Team 2026-09-13 15:48:23 · 1 阅读

第65章 Cargo 命令:cargo owner

名称

cargo owner — 管理注册表中 crate 的拥有者

语法

cargo owner [选项] --add 登录名 [crate]
cargo owner [选项] --remove 登录名 [crate]
cargo owner [选项] --list [crate]

描述

此命令用于修改注册表中 crate 的拥有者。Crate 的拥有者可以上传新版本并撤销旧版本。非团队拥有者还可以修改拥有者列表,请务必谨慎操作!

使用此命令时,必须通过 --token 选项或 cargo-login(1) 进行身份验证。

如果未指定 crate 名称,将使用当前目录中的包名称。

有关拥有者和发布的更多信息,请参阅参考手册

选项

拥有者选项

-a
--add 登录名

邀请指定的用户或团队成为拥有者。

-r
--remove 登录名

移除指定用户或团队的拥有者身份。

-l
--list

列出 crate 的拥有者。

--token token

认证时使用的 API 令牌。该参数会覆盖凭据文件中存储的令牌(该文件由 cargo-login(1) 创建)。

可通过 Cargo 配置 环境变量来覆盖凭据文件中的令牌。对于 crates.io,可以使用 CARGO_REGISTRY_TOKEN 环境变量指定令牌。对于其他注册表,可使用形如 CARGO_REGISTRIES_NAME_TOKEN 的环境变量指定令牌,其中 NAME 为全大写的注册表名称。

--index index

要使用的注册表索引 URL。

--registry registry

要使用的注册表名称。注册表名称在 Cargo 配置文件 中定义。若未指定,则使用默认注册表,其由配置项 registry.default 定义,默认为 crates-io

显示选项

-v
--verbose

使用详细输出。可指定两次以获得“非常详细”的输出,包含依赖警告和构建脚本输出等额外信息。也可通过 term.verbose 配置值 进行设置。

-q
--quiet

不打印 cargo 日志信息。 也可以通过 term.quiet 配置项 来设置。

--color when

控制何时使用彩色输出。可选值:

  • auto(默认):自动检测终端是否支持彩色输出。
  • always:始终显示颜色。
  • never:从不显示颜色。

也可以通过 term.color 配置项 来设置。

通用选项

+toolchain

如果 Cargo 是通过 rustup 安装的,且传给 cargo 的第一个参数以 + 开头,它会被解析为 rustup 工具链名称(例如 +stable+nightly)。 关于工具链覆盖的工作原理,详见 rustup 文档

--config KEY=VALUEPATH

覆盖 Cargo 的配置值。参数应为 KEY=VALUE 形式的 TOML 语法,或提供一个额外配置文件的路径。该标志可以多次指定。 详见命令行覆盖章节

-C PATH

在执行指定操作前更改当前工作目录。这会影响 Cargo 查找项目清单文件(Cargo.toml)的默认位置,以及查找 .cargo/config.toml 的目录等。此选项必须位于命令名称之前,例如 cargo -C path/to/my-project build

该选项仅在 nightly 通道 上可用, 且需启用 -Z unstable-options 标志(参见 #10098)。

-h
--help

打印帮助信息。

-Z flag

Cargo 的不稳定(仅限 nightly)标志。运行 cargo -Z help 查看详情。

环境变量

有关 Cargo 读取的环境变量详情,请参阅 参考文档

退出状态

  • 0:Cargo 成功。
  • 101:Cargo 执行失败。

示例

  1. 列出包的拥有者:

    cargo owner --list foo
    
  2. 邀请用户成为包的拥有者:

    cargo owner --add username foo
    
  3. 移除包的拥有者:

    cargo owner --remove username foo
    

另请参阅

cargo(1)cargo-login(1)cargo-publish(1)

评论 (0)