我无法理解
cargo update
的作用,并且我发现文档不一致。
https://doc.rust-lang.org/cargo/commands/cargo-update.html
实际上它说:
通常您可以采取三种方法:
cargo install
,直接使用锁定文件而不进行更改来安装依赖项。然而,在依赖冲突的情况下,这可能会失败。
cargo update
的东西会更新所有依赖项以尝试使用最新版本。很少推荐这样做,因为它很容易破坏现有的应用程序。仅当您有非常好的测试套件或愿意进行大量手动测试时才使用它。
cargo update xyz
来更新特定的依赖项(在本例中为
xyz
)。这通常是推荐的方法,您应该尽量减少以这种方式更新的依赖项的数量,通常您可以执行类似
cargo update abc pqr xyz
的操作来更新这三个依赖项。这通常是推荐的方式。
cargo update ...
依赖关系。
cargo update
将更新依赖项的次要版本和补丁版本,即只要您的依赖项遵守 semver,就可以更新所有内容,而不会引入重大更改。还有
cargo upgrade
,即使它升级了主要版本,它也会升级依赖项,并且您必须修复一些重大更改。