如何使用 rustup 来 install/use 组件的特定历史版本,例如:rustfmt、clippy

How to use rustup to install/use a specific history version of the component like: rustfmt, clippy

如何使用 rustup 到 install/use 组件的特定历史版本,例如:rustfmtclippy?

我的意图是,我希望始终在特定版本的组件(如 rustfmtclippy 上检查我的代码库,然后仅在我有意进行评估后才升级版本,而不是随机移动到最新版本。

通过rustup安装时,rustfmtcargoclippy等组件的版本与您当前使用的Rust版本绑定,不最新版本。

例如,在我的系统上,如果我指定 +stable (1.56.1) 或 +nightly (1.58.0-nightly),我会得到不同版本的 clippy

$ cargo +stable clippy --version
clippy 0.1.56 (59eed8a 2021-11-01)

$ cargo +nightly clippy --version
clippy 0.1.58 (d914f17 2021-11-16)

使用 rustup 时,您可以使用 rust-toolchain.toml 文件固定您的项目以使用特定的 Rust 版本(以及其他组件的相应版本),如下所示:

[toolchain]
channel = "1.56.1"