npmjs 包 tag 管理
小蜜蜂
· 2026/8/5
· 16 阅读
运维
npmjs
包管理
tag

如果需要发布非 latest 包,比如已经发布了 v2.0.0,想要更新 v1.0.0 为 v1.0.1 给没有迁移的用户,切换分支修改完 1.0 代码后,修改 package.json 的 version 为 1.0.1,可以给这个版本增加一个 tag,然后执行 npm publish --tag legacy 。
tag 管理说明:
-
latest (最新稳定版)
-
rc (Release Candidate, 发布候选版)
19.0.0-rc-65e06cb7-20241218 -
next & canary (先行版/金丝雀版)
19.3.0-canary-d5736f09-20260507 -
beta (测试版)
19.0.0-beta-26f2496093-20240514 -
experimental (实验版)
版本号命名方式:
0.0.0-experimental-d5736f09-20260507,d5736f09是那次提交的 commit-hash 后缀,20260507是提交日期
递归发布 workspace 里非 private 的包
# --no-git-checks 工作区不干净时仍可发
# --dry-run 预览
pnpm -r publish --access public --tag rc --no-git-checks
# 将某个版本追加到 tag
npm dist-tag add @your-org/your-pkg-1@3.0.0-rc-00042fff53-20260517 latest
# 循环追加
VERSION="3.0.0-rc-184a042b9f-20260518"
for pkg in \
@your-org/your-pkg-1 \
@your-org/your-pkg-2 \
@your-org/your-pkg-3; do
npm dist-tag add "${pkg}@${VERSION}" latest
done
# 弃用包
npm deprecate your-pkg@* "your-pkg is deprecated. Migrate to @your-org/*."
评论
登录后可发表评论