mcpField
C
creating-changesets

creating-changesets

github.com/saleor开发3094 次安装10 周前更新
代码仓库

关于 creating-changesets

用于按项目发布约定创建 Changesets 的技能。它帮助维护者选择软件包版本升级类型、撰写发布说明,并为 Changesets 发布流程准备变更。

主要功能

  1. 01patch、minor 和 major 升级指南
  2. 02交互式及手动创建 Changeset
  3. 03Markdown 格式示例
  4. 04发布流程与状态检查
  5. 05常见错误及场景说明

适用场景

  1. 01记录已完成的功能或修复
  2. 02在创建 PR 前准备变更
  3. 03记录不兼容变更
  4. 04检查待处理的版本升级

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/saleor/configurator --skill creating-changesets

安装后在 Claude Code 中输入/creating-changesets确认已加载。

附带文件references/scenarios.md

详细介绍

Changeset 与发布管理器

概述

自动按照项目约定创建 changeset,确保正确提升版本并编写完善的发布说明。

适用场景

  • 完成功能或修复后
  • 创建 PR 前
  • 准备发布时
  • 记录破坏性变更时

什么是 Changeset?

changeset 是 .changeset/ 目录中的 Markdown 文件,用于说明:

  1. 受影响的软件包
  2. 版本提升类型(patch/minor/major)
  3. 变更说明

Changeset 类型

类型适用场景版本变化
patchBug 修复、文档、重构、依赖更新1.0.0 → 1.0.1
minor新功能、非破坏性增强1.0.0 → 1.1.0
major破坏性变更、API 修改1.0.0 → 2.0.0

决策指南

以下情况使用 patch:
  • 不改变行为的 Bug 修复
  • 文档更新
  • 内部重构(无 API 变更)
  • 依赖更新(非破坏性)
  • 性能改进
  • 代码风格/lint 修复
以下情况使用 minor:
  • 新功能
  • 新的 CLI 命令
  • 新的配置选项
  • 功能增强
  • 新实体类型支持
  • 非破坏性的 API 新增
以下情况使用 major:
  • 破坏性配置变更
  • 移除功能或命令
  • 更改 CLI 接口
  • 必需的迁移步骤
  • Node.js 版本要求变更

创建 Changeset

交互式方法
pnpm changeset

按照提示操作:

  1. 选择受影响的软件包(按空格键选择)
  2. 为每个软件包选择版本提升类型
  3. 编写变更摘要
手动方法

在 .changeset/ 中创建一个随机名称的文件:

---
"@saleor/configurator": minor
---

Add support for reference attributes with entityType field

- Attributes of type REFERENCE now require an entityType field
- Introspection properly captures entity type references
- Deploy correctly handles reference attribute creation
文件格式
---
"package-name": patch|minor|major
---

Short description of the change (shown in CHANGELOG)

Optional longer description with:
- Bullet points for details
- Code examples if needed
- Migration instructions for breaking changes

发布工作流

1. 创建 Changeset
pnpm changeset
git add .changeset/
git commit -m "chore: add changeset for feature"
2. 提交 PR 并进行审查
  • Changeset 是 PR 的一部分
  • 审查者可以建议更改版本提升类型
3. 合并到 Main
  • Changesets 操作会创建“Version Packages”PR
  • 此 PR 会更新版本和 CHANGELOG
4. 合并版本 PR
  • 触发 npm 发布
  • 创建 GitHub 发布版本

检查状态

# See what changesets exist
npx changeset status

# Preview version bump
npx changeset version --dry-run

常见错误

错误问题修正方法
版本提升类型错误版本变化出乎意料查看上方的决策指南
描述含糊CHANGELOG 质量差具体说明变更内容
缺少 changeset没有发布说明始终在创建 PR 前添加
Changeset 过多说明零散合并相关变更
未包含上下文难以理解解释为什么,而不只是是什么

常见场景

常见场景的详细示例,包括:

  • Bug 修复、新功能、破坏性变更
  • 多项相关变更
  • 合并 changeset
  • 预发布版本
  • 编写说明的最佳实践

请参阅 场景与示例

参考资料

相关技能

  • CI/CD 自动化:参阅 managing-github-ci,了解发布工作流集成
  • 提交前验证:参阅 validating-pre-commit,了解提交前的质量门禁

评论

支持 Markdown