Remotion Bits 发布
使用此技能来准备和发布此仓库中的新 remotion-bits 版本。
技能功能
此技能执行完整的发布工作流:
- 升级
./package.json中的版本号。默认为补丁升级,除非用户明确要求次要版本、主要版本或特定版本。 - 使用简洁的发布说明更新
CHANGELOG.md以反映新版本。 - 运行
npm run registry:build。 - 使用
chore: vX.Y.Z提交发布更改。 - 将发布提交推送到
master分支。 - 从 git 历史和合并的拉取请求中研究自上一个版本以来的显著变更。
- 使用系统级浏览器(而非内部浏览器)打开预填好的 GitHub 发布表单。
- GitHub 发布完成后,使用
./scripts/deploy-docs.sh部署文档。 - 使用
npm publish发布包到 npm。
前提条件
- 在仓库根目录工作。
- 不要启动文档开发服务器。
- 假设发布需要环境中已配置好有效的 GitHub、Cloudflare 和 npm 凭证。
- 如果工作树中包含不相关的用户更改,不要还原它们。要么绕过它们,要么如果它们影响发布文件则停止并询问用户后再处理。
发布工作流
1. 确定目标版本
- 从
./package.json读取当前版本。 - 如果用户指定了特定版本,则使用该版本。
- 如果用户指定了升级类型,则应用该类型。
- 否则进行补丁升级。
- git 标签和发布标题必须为
vX.Y.Z。
2. 准备发布说明
- 审查自上一个发布标签以来的提交。
- 审查合并的拉取请求(当有助于总结变更时)。
- 在
CHANGELOG.md顶部插入新版本部分以更新文件。 - 保持条目简洁且面向用户。
- 使用以下格式:
### vX.Y.Z
- Feature: 新功能的简要描述
- Fix: 错误修复的简要描述
- Improvement: 增强的简要描述
- Docs: 文档更改的简要描述
3. 升级版本并构建注册表
- 将
./package.json更新为新版本。 - 运行:
npm run registry:build
- 如果构建失败,停止并先修复潜在问题再继续。
4. 提交并推送发布
- 审查发布差异。
- 使用以下命令提交准备好的发布:
git commit -am "chore: vX.Y.Z"
- 将提交推送到
master分支。 - 如果仓库落后于远程仓库或推送失败,先解决该状态再继续。
5. 起草 GitHub 发布
- 从 changelog 摘要和最近的提交构建发布说明。
- 使用
xdg-open或其他系统级打开命令(绝不要使用内部浏览器)打开此 URL:
https://github.com/everlier/remotion-bits/releases/new?tag=vX.Y.Z&target=master&title=vX.Y.Z&body=...
-
预填表单:
tag:vX.Y.Ztarget:mastertitle:vX.Y.Zprerelease:false
-
发布正文应遵循以下结构:
## What's Changed
- 每个显著新功能的简短描述。
- 每个显著错误修复的简短描述。
- 每个显著改进的简短描述。
**完整变更日志**:https://github.com/everlier/remotion-bits/compare/vX.Y.(Z-1)...vX.Y.Z
- 如果浏览器需要确认,暂停等待用户发布 GitHub 发布。
6. 部署文档
- GitHub 发布完成后,运行:
./scripts/deploy-docs.sh
7. 发布到 npm
- 确认 npm 认证可用。
- 从仓库根目录发布:
npm publish
决策规则
- 除非用户另有说明,默认使用补丁发布。
- 如果发布说明不明确,在询问用户之前先从提交历史中推导。
- 如果某个命令会修改发布制品,将这些生成的更改保留在发布提交中。
- 如果发布需要手动浏览器步骤,在边界处停止,告知用户等待的具体内容,然后在确认后继续。
- 如果缺少 GitHub、Cloudflare 或 npm 的凭证,停止并报告缺失的前提条件,而不是盲目重试。
完成清单
package.json包含目标版本。CHANGELOG.md顶部有该版本的新部分。npm run registry:build成功完成。- 存在发布提交
chore: vX.Y.Z并已推送到master。 - GitHub 发布表单已打开且预填了正确的值。
- 文档部署已完成。
npm publish成功完成。