核心功能
每次项目发布前,是不是还在对着一堆commit记录手动整理更新日志(Changelog)?那种痛苦,我们都懂。现在,有了Changelog Automation这个宝藏Skill,你可以彻底告别这种刀耕火种的模式了!它就像一个不知疲倦的助理,帮你自动完成所有繁琐工作。
这个Skill的核心能力包括:
- 自动化日志生成:严格遵循Conventional Commits规范,能够智能解析你的Git提交信息(如`feat`, `fix`, `perf`等),并自动生成结构清晰、符合Keep a Changelog格式的更新日志。
- 语义化版本控制:根据你的提交类型(新功能、bug修复、重大变更),自动计算并更新项目的版本号(MAJOR.MINOR.PATCH),完美实践Semantic Versioning。
- 多工具生态支持:无论你的技术栈是Node.js、Rust还是Python,它都提供了成熟的工具链支持,如
semantic-release,standard-version,git-cliff,commitizen等,总有一款适合你。 - CI/CD无缝集成:可以轻松集成到GitHub Actions、GitLab CI等主流持续集成/持续部署流水线中,实现从代码合并到发布说明生成、版本更新、NPM包发布的全流程自动化。
适用平台
这款Skill简直是现代AI编程助手的“最强外挂”!它完美适配市面上所有主流的AI编程工具和IDE,包括但不限于:
- Cursor
- GitHub Copilot
- Claude Code
- OpenAI Codex
- Gemini Code Assist
- 文心快码
- 腾讯云 CodeBuddy
- 华为云 CodeArts
为什么说是“最强外挂”?因为当你和你的团队开始遵循Conventional Commits规范后,你的代码仓库历史就变得结构化、可预测。这为AI编程助手提供了极高质量的上下文信息。AI可以更准确地理解每一次变更的意图,从而在代码审查、生成相关文档或编写新的功能时,提供更精准的建议。这不仅仅是自动化了一个任务,更是从根本上提升了AI与你协作的效率和质量。
实操代码示例
想实现完全自动化的发布流程吗?看看使用semantic-release的配置有多简单。你只需要在项目中创建一个release.config.js文件,然后交给CI/CD工具去执行就行了。
示例:使用semantic-release实现全自动发布
// release.config.jsnmodule.exports = {n branches: [n 'main',n { name: 'beta', prerelease: true },n { name: 'alpha', prerelease: true },n ],n plugins: [n '@semantic-release/commit-analyzer', // 解析commit信息n '@semantic-release/release-notes-generator', // 生成发布说明n [n '@semantic-release/changelog',n {n changelogFile: 'CHANGELOG.md', // 指定changelog文件名n },n ],n [n '@semantic-release/npm',n {n npmPublish: true, // 自动发布到NPMn },n ],n [n '@semantic-release/github', // 在GitHub上创建Release和Tagn {n assets: ['dist/**/*.js', 'dist/**/*.css'], // 附加发布产物n },n ],n [n '@semantic-release/git',n {n assets: ['CHANGELOG.md', 'package.json'], // 将变更提交回仓库n message:n 'chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}',n },n ],n ],n};
再配合一个简单的GitHub Actions工作流,就能实现
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END







暂无评论内容