1CARGO-VENDOR(1) CARGO-VENDOR(1)
2
3
4
6 cargo-vendor - Vendor all dependencies locally
7
9 cargo vendor [OPTIONS] [PATH]
10
12 This cargo subcommand will vendor all crates.io and git dependencies
13 for a project into the specified directory at <path>. After this
14 command completes the vendor directory specified by <path> will contain
15 all remote sources from dependencies specified. Additional manifests
16 beyond the default one can be specified with the -s option.
17
18 The cargo vendor command will also print out the configuration
19 necessary to use the vendored sources, which you will need to add to
20 .cargo/config.
21
23 Owner Options
24 -s MANIFEST, --sync MANIFEST
25 Specify extra Cargo.toml manifests to workspaces which should also
26 be vendored and synced to the output.
27
28 --no-delete
29 Don’t delete the "vendor" directory when vendoring, but rather keep
30 all existing contents of the vendor directory
31
32 --respect-source-config
33 Instead of ignoring [source] configuration by default in
34 .cargo/config read it and use it when downloading crates from
35 crates.io, for example
36
37 --versioned-dirs
38 Normally versions are only added to disambiguate multiple versions
39 of the same package. This option causes all directories in the
40 "vendor" directory to be versioned, which makes it easier to track
41 the history of vendored packages over time, and can help with the
42 performance of re-vendoring when only a subset of the packages have
43 changed.
44
45 Manifest Options
46 --manifest-path PATH
47 Path to the Cargo.toml file. By default, Cargo searches for the
48 Cargo.toml file in the current directory or any parent directory.
49
50 Display Options
51 -v, --verbose
52 Use verbose output. May be specified twice for "very verbose"
53 output which includes extra output such as dependency warnings and
54 build script output. May also be specified with the term.verbose
55 config value
56 <https://doc.rust-lang.org/cargo/reference/config.html>.
57
58 -q, --quiet
59 No output printed to stdout.
60
61 --color WHEN
62 Control when colored output is used. Valid values:
63
64 · auto (default): Automatically detect if color support is
65 available on the terminal.
66
67 · always: Always display colors.
68
69 · never: Never display colors.
70
71 May also be specified with the term.color config value
72 <https://doc.rust-lang.org/cargo/reference/config.html>.
73
74 Common Options
75 -h, --help
76 Prints help information.
77
78 -Z FLAG...
79 Unstable (nightly-only) flags to Cargo. Run cargo -Z help for
80 details.
81
82 --frozen, --locked
83 Either of these flags requires that the Cargo.lock file is
84 up-to-date. If the lock file is missing, or it needs to be updated,
85 Cargo will exit with an error. The --frozen flag also prevents
86 Cargo from attempting to access the network to determine if it is
87 out-of-date.
88
89 These may be used in environments where you want to assert that the
90 Cargo.lock file is up-to-date (such as a CI build) or want to avoid
91 network access.
92
93 --offline
94 Prevents Cargo from accessing the network for any reason. Without
95 this flag, Cargo will stop with an error if it needs to access the
96 network and the network is not available. With this flag, Cargo
97 will attempt to proceed without the network if possible.
98
99 Beware that this may result in different dependency resolution than
100 online mode. Cargo will restrict itself to crates that are
101 downloaded locally, even if there might be a newer version as
102 indicated in the local copy of the index. See the cargo-fetch(1)
103 command to download dependencies before going offline.
104
105 May also be specified with the net.offline config value
106 <https://doc.rust-lang.org/cargo/reference/config.html>.
107
109 See the reference
110 <https://doc.rust-lang.org/cargo/reference/environment-variables.html>
111 for details on environment variables that Cargo reads.
112
114 0
115 Cargo succeeded.
116
117 101
118 Cargo failed to complete.
119
121 1. Vendor all dependencies into a local "vendor" folder
122
123 cargo vendor
124
125 2. Vendor all dependencies into a local "third-party/vendor" folder
126
127 cargo vendor third-party/vendor
128
129 3. Vendor the current workspace as well as another to "vendor"
130
131 cargo vendor -s ../path/to/Cargo.toml
132
134 cargo(1)
135
136
137
138 2019-12-09 CARGO-VENDOR(1)