如何使用"货物猛拉"?

Jod*_*oro 4 rust rust-crates rust-cargo

我已经发布了我的箱子,然后意识到我忘了在我的脑袋中加入一些小细节README.md.我已经提供了详细的进 README.md,做git commitpush.如何在不更改版本的情况下更新我的箱子?

crates.io文档:

cargo yank

在您发布实际上因某种原因而最终被破坏的箱子版本(语法错误,忘记包含文件等)时,可能会出现这种情况.对于这种情况,Cargo支持yank一个版本的板条箱.

$ cargo yank --vers 1.0.1 

$ cargo yank --vers 1.0.1 --undo
Run Code Online (Sandbox Code Playgroud)

我不明白如何使用它.为什么有两个命令:一个没有--undo?我应该同时运行它们吗?还是只有一个?哪一个?

我应该crate package && crate publish追赶吗?还是只cargo yank ...?这会自动更新我的箱子吗?

DK.*_*DK. 8

如果不发布新版本,则无法更新您的包.crate存储库是明确设计的,因此crate是不可变的:一旦发布,它们永远不会改变,周期.

Yanking适用于已发布的包装箱存在严重问题的情况,例如严重的安全漏洞,或可能损坏用户数据,或者是,因为它只是直接运行不起作用.这是一个信号,没有人应该出于任何原因使用该版本的箱子.不完整README.md并不真正符合该标准.

只需发布一个新版本,或等到您出于其他原因发布新版本.


至于为什么有两个命令:因为一个人猛拉一个版本,而另一个人猛拉它.Un-yanking与发布不同,它只是恢复被猛拉的箱子,好像它从来没有被猛拉过一样.

  • @Jodimoro:猛拉的板条箱在 crates.io 上的板条箱版本历史记录中显示为猛拉的。 (2认同)