用途:为 baserCMS 生成发布说明,在 plugins/baser-core/VERSION.txt 中追加自上次发布以来的变更记录。要点是把提交日志翻译成使用者能理解的语言,而非直接粘贴。
文件格式:首行为开发中版本,其后是许可证头、凡例行(CHG: 变更内容 / BUG: 缺陷修复 / NEW: 功能追加),再往下是发布区块。新发布区块置于最上方。每行为 - <NEW|CHG|BUG> [略号] 内容,有 Issue 号时行末加 fix #NNNN。
主要步骤:一、用 git rev-parse --abbrev-ref HEAD 确认当前分支,只处理该分支的变更。二、与用户确认上一版本、本次发布版本与日期;用 git tag --sort=-creatordate 确认标签存在。三、用 git log 上一版本..HEAD --no-merges --format=%h%x09%s 收集提交,用 git show --stat --format= 查看改动文件以判定插件。四、排除合并提交、发布作业本身、仅测试、CI 与开发环境、依赖更新,以及本次新搭载插件内部的修复与变更(归入一条 NEW)。但 PHP、CakePHP 支持版本变更按 CHG 记录。五、依路径 plugins/<name>/ 判定略号:BC、CC、BG、ML、UL、SO、BE、MC、CL;新记录统一用 UL,不改动既有区块。六、把同一功能的多条提交合并为一行。七、按 NEW/CHG/BUG 分类。八、改用面向使用者的措辞,去掉类名方法名。九、只保留 Issue 号,去掉 PR 号。十、按 NEW→CHG→BUG、各类内按插件顺序排列。十一、直接写入 VERSION.txt,插入位置在凡例行正下方、既有最新区块之上,不修改首行版本号,之后用 git diff 复核。
限制:需用户确认前置版本与发布版本;合并提交、测试、CI、依赖更新等不上榜;安全修复不写攻击细节;具体命令行与写入方式以技能文档为准,收费、平台等资料暂未提供。