2 个版本
0.1.0 |
|
---|---|
0.1.0-alpha.2 | 2024 年 8 月 22 日 |
320 在 Cargo 插件 中
每月 76 次下载
39KB
611 行
cargo-override
快速 覆盖依赖项,使用 [patch]
部分。
此插件添加了一个新的 cargo 子命令 cargo override
,使您能够轻松地使用自定义本地副本或 Git 版本修补依赖项。
cargo override
自动推断出您通常需要手动检查的许多内容。
[patch.crates-io]
# ^^^^^^^^^ The correct registry for this dependency
anyhow = { path = "../anyhow" }
# ^^^^^^^^^^^^^^^^^ A crate called "anyhow" is exposed at this source
#^^^^^ The name of the crate to patch
# ^^^^^^^^^
# The version of anyhow exposed here meets, the requirement
# we set in our `Cargo.toml`, so it will be valid as a patch
[!NOTE]
cargo-override
目前仍处于 alpha 版,可能存在一些粗糙的边缘。如果您遇到错误或发现可以改进的地方,请告诉我们,即使问题很轻微。
安装
首先,确保您已安装最新版本的 cargo
。
然后,可以使用 cargo
安装 cargo override
。
cargo install [email protected] --locked
未来将提供其他安装方法。
用法
使用本地版本覆盖依赖项
要使用本地副本覆盖依赖项,请使用 --path
。
例如,如果相对路径 ../anyhow
包含对 anyhow
crate 的修改版本
cargo override --path ../anyhow
结果,一个类似于以下内容的补丁将被附加到您的 Cargo.toml
[patch.crates-io]
anyhow = { path = "../anyhow" }
使用 Git 版本覆盖依赖项
要使用 Git 源覆盖依赖项,请使用 --git
。
例如,如果 https://github.com/dtolnay/anyhow
包含了尚未在 crates.io 上发布的 anyhow
crate 的新版本,那么就可以使用它。
cargo override --git https://github.com/dtolnay/anyhow
结果,一个类似于以下内容的补丁将被附加到您的 Cargo.toml
[patch.crates-io]
anyhow = { git = "https://github.com/dtolnay/anyhow" }
此外,可以使用标志 --branch
、--tag
和 --rev
分别从特定的分支、标签或 Git 修订版获取仓库。
依赖项
~85MB
~1.5M SLoC