gpt4 book ai didi

rust - 如何使用 "cargo yank"?

转载 作者:行者123 更新时间:2023-11-29 07:52:36 34 4
gpt4 key购买 nike

我发布了我的 crate,然后意识到我忘记在我的 README.md 中包含一些小细节。我已将该详细信息包含在 README.md 中,并执行了 git commitpush。如何在不更改其版本的情况下更新我的箱子?

来自 the crates.io documentation :

cargo yank

Occasions may arise where you publish a version of a crate that actually ends up being broken for one reason or another (syntax error, forgot to include a file, etc.). For situations such as this, Cargo supports a yank of a version of a crate.

$ cargo yank --vers 1.0.1 

$ cargo yank --vers 1.0.1 --undo

我不知道如何使用它。为什么有 2 个命令:一个与另一个没有 --undo?我应该同时运行它们吗?还是只有一个?哪个?

在那之后我应该运行 crate package && crate publish 吗?或者只有 cargo yank ...?这会自动更新我的箱子吗?

最佳答案

如果不发布新版本,您不能更新您的 crate。 crate 存储库经过明确设计,因此 crate 是不可变的:一旦发布,它们就永远不会改变,期间。

Yanking 适用于已发布的 crate 存在一些严重问题,例如严重的安全漏洞,或可能损坏用户数据,或者是的,因为它直接不起作用。这是一个信号,表明任何人都不应出于任何原因使用该版本的 crate 。不完整的 README.md 并不真正符合该标准。

只发布一个新版本,或者等到您出于其他原因发布新版本时才发布。


至于为什么有两个命令:因为一个提取一个版本,另一个取消提取它。取消抽取与发布不同,它只是恢复被抽取的 crate ,就好像它从来没有被抽取过一样。

关于rust - 如何使用 "cargo yank"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43992434/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com