如何在语义发布中强制版本

How to force a version in semantic release

我有一个需要在 npmjs.com 中发布的 npm 包,但是因为我取消发布了以前错误的版本,现在 npmjs 不允许我重新发布具有相同版本的工件(它抛出错误说 You cannot publish over the previously published versions)

在我的项目中,我使用 semantic-release,它会根据上次发布版本的提交自动计算要提供给工件的版本。

因此我想知道是否有办法 overwriteforce semantic-release 提供与它计算的版本不同的版本,例如在 [=21= 时输入它] 它在 CI

中的命令

semantic-release 使用标签来确定最后一个版本和自那时以来添加的新提交。为了跳过从 npm 取消发布的版本,您可以在与发布的最新版本关联的提交上添加与该版本相对应的 Git 标签。

git tag v<latest-version-published> v<version-to-skip> git push --tags origin

然后重新运行你失败的CI工作,这样语义释放可以再次运行,选择新标签并从那里增加版本。