Nourishing Pizza Microservice

    utip

    1.3.13 • Public • Published

    utip

    用于重构后项目修改测试,及自动发包,提交仓库功能

    待更新内容

    • window系统下执行utip build --mode local不能正常执行(王皓反馈)

    注意事项

    • 执行utip build,使用了cnpm install来下载依赖包,需要全局安装cnpm
    • utip build只支持npm 3.x平行依赖的源码复制.
      • npm 2.x升级npm 3.x后,删除依赖node_modules重新npm install即可

    安装

    $ npm install -g utip
    

    注意:考虑下载速度问题,自动下载依赖包时用到了cnpm,需要全局安装cnpm

    执行环境

    安装后,在仓库集的根目录执行以下命令,如utip build

    执行命令

    $ utip pull
    $ utip build [--mode local] //[]内为可选参数
    $ utip checkout
    $ utip checkdist
    $ utip temp
    $ utip pppppublish
    

    简化命令

    $ utip pu
    $ utip b [-m local]
    $ utip co
    $ utip cd
    $ utip t
    
    • utip pppppublish命令用于发包,涉及到仓库提交,避免误操作,不提供简化命令

    操作说明

    1.utip pull | utip pu

    拉取各仓库更新

    2.utip build | utip b

    参数设置

    utip build默认拉取各仓库更新,适用于提交前测试整体兼容

    utip build --mode local可取消拉取各仓库更新,适用于本地测试bug

    • 初始化:如本地目录未下载完整仓库,会拉取仓库到本地
    • 仓库更新:自动获取更新,合并以上项目的release分支
    • 复制源码:自动复制所有源码及依赖到的相关文件,拷贝到到依赖库node_modules
    • 输出文件:自动在kero-adapter的dist目录输出最终的产出文件

    3.utip temp | utip t

    • utip build后可执行此命令,用于新项目初始化

    • 建立模板文件夹:自动生成空白模板,导入最新输出文件(如u.js等)

    4.utip checkout | utip co

    • 还原所有修改及输出

    5.utip checkdist | utip cd

    • 还原所有输出

    6.utip pppppublish

    用于自动修改版本号,完成npm publish发布

    • 更改版本:自动更新源码库package的版本,采用小版本+1进行升级
    • 更改依赖:自动更新各库在package的依赖版本
    • 输出文件:自动在各仓库输出dist目录
    • npm发布:自动发布最新版本到npm
    • 提交仓库:自动提交远程仓库release分支

    构建思路

    utip通过执行utip build,会在当前目录下执行以下操作:

    1. 初始化:判断完整的依赖仓库是否已经存在于当前目录。如未存在,则通过git clone依次下载各仓库,并自动执行npm install安装各仓库的依赖包

      各仓库依赖关系,可以查看这里

    2. 更新:拉取最新分支内容,如各仓库已存在于当前目录,自动执行git pull并拉取release分支的更新到本地

      如有冲突,需要手动解决,所以要做好勤提交的习惯

    3. neoui输出\拷贝:neoui仓库执行npm run product输出u.css,并复制到kero-adapter/node_modules/neoui/dist文件中,用于最后的输出时获取

    4. grid/tree/polyfill输出\拷贝:grid/tree/polyfill仓库输出并拷贝到adapter相应依赖库的dist目录下

    5. js源码拷贝:复制各仓库的js源码到依赖仓库的node_modules对应的仓库中

    6. 最终输出:在kero-adapter仓库中输出最终的u.js

    7. utip build执行后,可选择执行utip temp,实现创建空白模板文件夹:

      空白模板:已导入所有输出文件,方便用于测试。


    utip publish: 非发布人员,请勿使用此功能,会更改package.json中的版本号。

    • 用于各仓库发布npm publish,介绍略。

    CHANGELOG

    1.3.3

    • 新增

      增加utip checkdist命令

    1.3.2

    • 优化

      utip-build复制调整,调整后:

      • 不再支持npm 2.x版本的层级依赖,目前支持npm 3.x平行依赖
      • 不再遍历完整目录
      • 不再重复生成冗余依赖目录(此部分之前会造成webpack执行警告,建议删除node_modules,重新npm install一次依赖关系)

    1.3.1

    • bug修改:

      utip build增加dist目录更新,避免因命名更改生成冗余文件

    • add新增命令

      utip checkout:还原dist目录,用于本地或者测试环境,避免之前二次执行utip build冲突

    1.3.0

    • 优化utip build输出,取消neouikero-adapter仓库*.min.js输出,减少执行时间

      如需输出完整目录,在kero-adapter仓库手动执行npm run product

    Keywords

    none

    Install

    npm i utip

    DownloadsWeekly Downloads

    45

    Version

    1.3.13

    License

    ISC

    Last publish

    Collaborators

    • whizbz
    • huyueb
    • liuyk
    • onvno