cimi——一款全自动发布NPM包的工具

5,905 阅读3分钟

您好,如果喜欢我的文章,可以关注我的公众号「量子前端」,将不定期关注推送前端好文~

前言

博主最近的时间一直投入concis组件库的开发工作,每次改完bug或者是新增完一些组件功能后都需要去发包、更新线上文档,这样一步步下来其实是比较麻烦的。

发一个新的NPM包你可能需要这些步骤:

  • 手动修改package.json中的version.
  • git add .git commit -m "xxxx"生成一个提交.
  • git push origin master 推送到远端.
  • 在github中打一个新tag.
  • npm publish将代码提交到NPM.

是不是很麻烦?这就是cimi的由来。

Cimi

cimi是一款全自动npm发包工具,一行命令帮助你git replase、创建git tag、发布npm包。

Cimi自动生成新版本号,自动生成commit message,创建tag,push到github,最后发布到npm中,整个过程只需要一行命令,解放你的双手!

示例如下:

image.png

可以看到,通过一行cimi patch master,完成了手改版本号git add/commitgit pushgit tapsnpm publish所有任务。

结合实际项目,你也可以像这样去配合cimi使用:

 "scripts": {
    "build": "rollup -c ./rollup.config.js",
    "replase": "npm run build && cimi patch master",
 }

先通过构建工具打包文件,将文件发布到NPM中,这也是cimiconcis组件库中的一个实践,亲测很方便。博主也是把项目中自动更新package.json中的脚本给删掉了~

Cimi修改版本规则

Cimi共有三种规则,来进行发包,其实也就是确定版本号。

  • cimi patch 更新一个小版本,如1.1.0 -> 1.1.1,如bug修复;
  • cimi minor 更新一个中版本,如1.1.0 -> 1.2.0,如新增功能;
  • cimi major 更新一个大版本,如1.1.0 -> 2.1.0,如重构架构;

而分支默认为master,如果主分支为其他分支,应这样使用:

cimi patch main cimi patch beta

使用

安装cimi:

# 全局安装cimi
npm i cimi -g
# 本地安装cimi
npm i cimi -D

以下是cimi -h的输出:

Usage: cimi [options]

Options:
  -v, --version  output the version number
  patch          patch your new npm package
  minor          minor your new npm package
  major          major your new npm package
  -h, --help     display help for command

  Tip:

    You should run this script in the root directory of you project or run by npm scripts.

  Examples:

    $ cimi patch [branch] (default: master)
    $ cimi minor [branch] (default: master)
    $ cimi major [branch] (default: master)

写在最后

cimi是博主最近开始做的一个轮子,目前功能简单,也会在实际项目中获取新的灵感,代入到cimi中,也是欢迎大家体验。

最后,希望大家可以给conciscimi一些支持~给一些star或者是加入我们,一起去开发。

cimi github concis github concis文档

感谢支持。

2191662387399_.pic.jpg