CARGO-NEW(1) | General Commands Manual | CARGO-NEW(1) |
NAME
cargo-new — Create a new Cargo package
SYNOPSIS
cargo new [options] path
DESCRIPTION
This command will create a new Cargo package in the given directory. This includes a simple template with a Cargo.toml manifest, sample source file, and a VCS ignore file. If the directory is not already in a VCS repository, then a new repository is created (see --vcs below).
See cargo-init(1) for a similar command which will create a new manifest in an existing directory.
OPTIONS
New Options
--bin
--lib
--edition edition
--name name
--vcs vcs
--registry registry
Registry names are defined in Cargo config files https://doc.rust-lang.org/cargo/reference/config.html. If not specified, the default registry defined by the registry.default config key is used. If the default registry is not set and --registry is not used, the publish field will not be set which means that publishing will not be restricted.
Display Options
-v, --verbose
-q, --quiet
--color when
May also be specified with the term.color config value https://doc.rust-lang.org/cargo/reference/config.html.
Common Options
+toolchain
--config KEY=VALUE or PATH
-C PATH
This option is only available on the nightly channel https://doc.rust-lang.org/book/appendix-07-nightly-rust.html and requires the -Z unstable-options flag to enable (see #10098 https://github.com/rust-lang/cargo/issues/10098).
-h, --help
-Z flag
ENVIRONMENT
See the reference https://doc.rust-lang.org/cargo/reference/environment-variables.html for details on environment variables that Cargo reads.
EXIT STATUS
EXAMPLES
cargo new foo