app-release
スター13
フォーク1
更新日2026年4月21日 15:27
使用本 skill 发布 macOS 应用。自动生成 CHANGELOG、递增版本号、提交代码并打 tag 推送到远程。
インストール
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SKILL.md
readonlyメニュー
使用本 skill 发布 macOS 应用。自动生成 CHANGELOG、递增版本号、提交代码并打 tag 推送到远程。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | app-release |
| description | 使用本 skill 发布 macOS 应用。自动生成 CHANGELOG、递增版本号、提交代码并打 tag 推送到远程。 |
发布 macOS 应用的标准流程:更新版本号 → 更新 CHANGELOG → 更新 release-notes.md → 提交代码 → 打 tag → 推送。
project.yml 的 MARKETING_VERSION 和 CURRENT_PROJECT_VERSIONCHANGELOG.md 和 release-notes.mdCCManager.app.zip,并生成用于自定义更新器的 appcast.xmlgit status
git tag --list | tail -5
确保工作区干净,已有 tag 历史。
从 project.yml 读取当前版本:
grep -E "MARKETING_VERSION|CURRENT_PROJECT_VERSION" project.yml
当前版本格式:
MARKETING_VERSION = 市场版本(如 1.0.0)CURRENT_PROJECT_VERSION = 构建版本(整数,每次发布递增)新版本规则:
feat: 提交 → 递增 minor(如 1.0.0 → 1.1.0)fix: 或 chore: → 递增 patch(如 1.0.0 → 1.0.1)CURRENT_PROJECT_VERSION 每次发布都 +1修改 project.yml(XcodeGen 的源头配置):
sed -i '' 's/MARKETING_VERSION: ".*"/MARKETING_VERSION: "X.Y.Z"/' project.yml
sed -i '' 's/CURRENT_PROJECT_VERSION: "[0-9]*"/CURRENT_PROJECT_VERSION: "N"/' project.yml
# 重新生成 project.pbxproj(确保本地构建也使用正确版本)
xcodegen generate
查找上一个 tag 到当前 HEAD 之间的所有提交:
git log v1.0.1..HEAD --oneline
分析所有提交,用英文总结每类变更的核心内容并去掉与产品本身无关的提交,比如 CI,docs 等,而非简单罗列 commit message。
## [New Version] - YYYY-MM-DD
### Features
- [English summary of feature changes]
### Bug Fixes
- [English summary of bug fixes]
### Others
- [English summary of chore/docs/refactor changes]
如果中间有 BREAKING CHANGE:,在 ## 下方添加 **Breaking Change** 标记。
这个文件的内容会用于:
appcast.xml 时嵌入 <description><![CDATA[...]]></description>内容应该是这个版本的 changelog 摘要(与 CHANGELOG.md 中该版本的内容一致)。
格式示例:
### Features
- Add DMG packaging support for macOS distribution
### Bug Fixes
- Fix appcast.xml generation to use GitHub Release assets
git add project.yml CCManager.xcodeproj/project.pbxproj CCManager.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved CHANGELOG.md release-notes.md
git commit -m "release: vX.Y.Z"
git tag -a vX.Y.Z -m "Release vX.Y.Z"
git push origin main && git push origin vX.Y.Z
推送完成后验证:
git log --oneline -3
git tag --list | grep vX.Y.Z
git stash 或让用户确认已提交