changeset发版管理工具

是什么:自动化更新包版本、变更日志,并根据提供的信息发布新版本的包。不用在每次发布版本后手动在变更日志中追加发版内容,工具会自动追加变更内容,日志遵循 https://semver.org/ 规范

怎么用:

1. 安装,我用的pnpm,所以第一步 pnpm i changeset
2. pnpm exec changeset init,然后生成.changeset文件夹,下面有个 config.json 配置,配置大概说明:
changelog:changelog 生成方式

commit: 不要让 changeset 在 publish 的时候帮我们做 git add

linked: 配置哪些包要共享版本

access: 公私有安全设定,内网建议 restricted ,开源使用 public

baseBranch: 项目主分支

updateInternalDependencies: 确保某包依赖的包发生 upgrade,该包也要发生 version upgrade 的衡量单位(量级)

ignore: 不需要变动 version 的包

___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH: 在每次 version 变动时一定无理由 patch 抬升依赖他的那些包的版本,防止陷入 major 优先的未更新问题
3. 我针对常用命令做了几个自定义指令放在script,可以通过pnpm run XXX的方式启动,如下:

"scripts": {
"changeset": "changeset", // 这个命令会让你选择几种发版方式,补丁,主版本,次版本,如图1.1,选版本后,会让你输入这次提交代码的修改内容,输入回车后会新增一个md文件,包括了刚才提交的内容,该文件在.changeset下,如图1.2
"changeset-version": "changeset version", // 执行后修改版本号,此时 新增.changeset下的md文件会消失,内容会合并到CHANGELOG.md中
"changeset-pre-beta": "changeset pre enter beta", // 进入预发布模式,有beta next alpha,默认next
"changeset-pre-next": "changeset pre enter next",
"changeset-pre-alpha": "changeset pre enter alpha",
"changeset-pre-exit": "changeset pre exit"// 推出预发布模式
},

图1.1,发布内容的类型选择

 图1.2,提交更新内容后产生的文件位置和内容

 

4. 建议在README.md中加入一个变更日志链接。然后放上这个CHANGELOG.md的链接,方便使用者了解发布信息

5.更多信息可以参考:https://blog.csdn.net/bobo789456123/article/details/137018577

6.demo文件:https://github.com/864684766/changesetTest/blob/main/CHANGELOG.md

posted @   洛晨随风  阅读(192)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
历史上的今天:
2015-11-13 oracle不用tsname文件的时候着怎么办
点击右上角即可分享
微信分享提示