我阅读了 https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
如果我理解正确,当我将Cargo.lock提交到我的crate(既是库又是可执行文件)的仓库中,并且发布到crates.io时,下游的crate将忽略它并构建自己的snap,对吗?
我阅读了 https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
如果我理解正确,当我将Cargo.lock提交到我的crate(既是库又是可执行文件)的仓库中,并且发布到crates.io时,下游的crate将忽略它并构建自己的snap,对吗?
Cargo.lock
在版本控制中,但库没有?
Cargo.lock
的目的是描述成功构建时世界的状态。然后,它用于通过确保编译完全相同的依赖关系来提供确定性构建,无论哪台机器正在构建软件包。Cargo.lock
。Cargo.lock
(即使存在)。这正是因为库不应该被确定地重新编译为库的所有用户。Cargo.lock
文件,则可以使用多个库的副本,甚至可能出现版本冲突。