cargo-init(1)

名称

cargo-init — 在现有目录中创建新的 Cargo 包

概要

cargo init [选项] [路径]

描述

此命令将在当前目录中创建一个新的 Cargo manifest 文件。如果提供了路径作为参数,则在给定目录中创建。

如果目录中已存在通常命名的 Rust 源文件,将使用这些文件。如果不存在,则将创建一个示例 src/main.rs 文件;如果传递了 --lib 选项,则创建 src/lib.rs 文件。

如果该目录尚未在 VCS 仓库中,则会创建一个新仓库(参见下文 --vcs)。

有关在新建目录中创建新包的类似命令,请参见 cargo-new(1)

选项

Init 选项

--bin
创建一个带二进制目标 (src/main.rs) 的包。这是默认行为。
--lib
创建一个带库目标 (src/lib.rs) 的包。
--edition edition
指定要使用的 Rust 版本。默认为 2024。可能的值:2015、2018、2021、2024
--name name
设置包名。默认为目录名。
--vcs vcs
为给定的版本控制系统 (git, hg, pijul, 或 fossil) 初始化一个新的 VCS 仓库,或完全不初始化任何版本控制 (none)。如果未指定,默认为 git 或配置值 cargo-new.vcs,如果已位于 VCS 仓库内部,则默认为 none
--registry registry
这将设置 Cargo.toml 中的 publish 字段为给定的注册表名称,从而将发布限制为仅该注册表。

注册表名称在 Cargo 配置文件中定义。如果未指定,则使用由 registry.default 配置键定义的默认注册表。如果未设置默认注册表且未使用 --registry,则 publish 字段将不会设置,这意味着发布将不受限制。

显示选项

-v
--verbose
使用详细输出。可以指定两次以获得“非常详细”的输出,其中包括依赖警告和构建脚本输出等额外信息。也可以通过 term.verbose 配置值指定。
-q
--quiet
不打印 cargo 日志消息。也可以通过 term.quiet 配置值指定。
--color when
控制何时使用彩色输出。有效值:

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

也可以通过 term.color 配置值指定。

通用选项

+工具链
如果 Cargo 是使用 rustup 安装的,并且 cargo 的第一个参数以 + 开头,它将被解释为 rustup 工具链名称(例如 +stable+nightly)。有关工具链覆盖如何工作的更多信息,请参见 rustup 文档
--config 键=值路径
覆盖 Cargo 配置值。参数应采用 TOML 语法 KEY=VALUE,或提供额外配置文件的路径。此标志可以指定多次。有关更多信息,请参见命令行覆盖部分
-C 路径
在执行任何指定操作之前更改当前工作目录。这会影响 Cargo 默认查找项目 manifest 文件(Cargo.toml)的位置,以及搜索发现 .cargo/config.toml 的目录等。此选项必须出现在命令名称之前,例如 cargo -C path/to/my-project build

此选项仅在每夜构建通道上可用,并且需要启用 -Z unstable-options 标志(参见#10098)。

-h
--help
打印帮助信息。
-Z flag
用于 Cargo 的不稳定(仅每夜构建)标志。运行 cargo -Z help 查看详细信息。

环境

有关 Cargo 读取的环境变量的详细信息,请参见参考文档

退出状态

  • 0: Cargo 成功完成。
  • 101: Cargo 未能完成。

示例

  1. 在当前目录中创建二进制 Cargo 包

    cargo init
    

参见

cargo(1), cargo-new(1)