本文参加了由公众号@若川视野 发起的每周源码共读活动,点击了解详情一起参与。
这是源码共读的第39期,链接:juejin.cn/post/714587…
学习使用release-it
准备项目
创建空文件夹,执行npm init -y生成默认的package.json,并执行git init成为一个git仓库,并与远程仓库关联(后续release-it可自动推送远程)。
开始安装并使用release-it
执行npm init release-it后,可选择生成.release-it.json配置文件或者在package.json中添加release-it配置,我选择了后者,成功后如下图所示:
复制配置内容至
release-it字段,并执行npm i @release-it/conventional-changelog -D安装@release-it/conventional-changelog。
git add、commit后(必须保证暂存区是干净的),执行
npm run release,进行打tag、生成changelog。
安装并使用git-cz
安装git-cz,在scripts中添加commit命令执行git-cz,
add所修改的文件内容后,执行
npm run commit,可选择相应commit规范前缀进行commit message编写(ps:一点使用感想,如果平常习惯使用类似于source tree的git可视化工具做提交的话,可能会有点不适应,因为执行完npm run commit后不会自动推送远程,而且执行前也必须先add)
我选择了chore
发布一个npm包
去npm官网注册npm账号,并执行npm login进行登录后,执行npm publish。
发布成功后,可在npm自己账户下找到自己的package
总结
说实话一开始并没有看懂任务具体是什么,可能还是太菜了。。。
首先把关注点放在了npm包发布上,但是看学习任务内容讲的是release-it和git-cz,还以为release-it是可以直接发布npm包,结果就是花费了大量时间才明白原来release-it是自动提升版本、打tag、生changelog的工具,不具备npm发布功能(enmm。。。fix一下,经大佬提醒release-it是具备发布功能的,后续还需再研究一下)
感谢看完这篇流水账,如有问题感谢指正~希望以后自己不断坚持总结,成为更优秀的自己!
参考资料
感谢各位优秀的小伙伴~