epoint-mrc v8.3.9-beat.2
@epoint-mrc 移动前端跨端框架仓库
M8移动前端跨端框架使用monorepo仓库,将所有跨端框架的代码放在一个仓库中,使用pnpm维护发布,提高可维护性。why mono
全局安装 pnpm
首次使用,没有pnpm需要安装,如果已经安装,可以直接使用:
npm install -g pnpm
使用 pnpm 安装项目
pnpm install
会自动安装依赖,并且根据包名与版本号,自动互相关联packages中被依赖的工程。
使用 pnpm 添加远程依赖
pnpm --filter "@epoint-mrc/xxx" add xxx
# 指定安装源等
pnpm --filter "ejs.m8.mobileframe" add postcss-import@^12.0.1 -D --registry https://registry.npm.taobao.org
会对指定的仓库安装依赖。
使用 pnpm 运行指定包下的命令
pnpm --filter "ejs.m8.mobileframe" dev
此处的包名需要匹配子仓库下package.json
中的name
清除项目node_modules依赖
未找到pnpm提供清除node_modules文件命令,使用npm run clean
清除,并且会自动重新pnpm install
安装依赖关联
npm run clean
开发调试子仓库
所有命令都可在epoint-mrc
根目录执行
新建分支
- 基于
develop
分支新建功能开发分支:
git checkout -b feature/xxx
功能开发调试
使用ejs.m8.mobileframe
工程进行开发调试。
- 运行
ejs.m8.mobileframe
工程;
pnpm --filter "ejs.m8.mobileframe" dev
- 在子仓库中的改动会自动在ejs.m8.mobileframe工程中生效。
分支上传
- 在
feature/xxx
分支上提交代码:
git add .
# 使用pnpm cz 代替 git commit -m "xxx"
pnpm cz
git push
在git仓库中申请合并。
版本发布
跨端仓库使用 changesets 进行版本发布。
package.json中的scripts
简写了changeset
、changeset version
和 changeset publish
命令。
提升版本
pnpm chs
使用changesets选择需要修改版本号的子仓库,一般回车跳过major
、minor
版本修改,只进行patch
最后一位的版本号修改。
会生成一个changeset文件,需要提交到仓库中。
执行修改版本号
发布时,执行命令统一修改仓库的版本号:
会消耗changeset文件,对涉及的子仓库的package.json进行版本修改,子仓库依赖的关联依赖的版本会自动修改。
pnpm chs-v
发布
执行changeset publish
命令进行发布。
pnpm -r publish
预发布版本
有时需要发布sp
、beta
等版本,通过 changeset
提供的 Prereleases
模式来实现。
命令为pnpm chs pre enter <tag>
<tag>
可以为需要在版本后面添加的字符串,如sp
、beta
等,例如:
pnpm chs pre enter sp
此时会进入预发布版本,.changeset
文件夹下会生成一个per.json
文件,表示预发布版本模式。
此时执行提升版本和执行修改版本号,会自动添加sp后缀
# 1-1 进入预发布模式
pnpm chs pre enter sp
# 1-2 提交变更集
pnpm chs
# 1-3 提升版本
pnpm chs-v
# 1-4 发包
pnpm -r publish
# 1-5 得到 1.0.0-sp.0 版本
完成版本发布之后,退出 Prereleases 模式:
pnpm chs pre exit
# 1-1 退出预发布模式
pnpm chs pre exit
# 1-2 提交变更集
pnpm chs
# 1-3 提升版本
pnpm chs-v
# 1-4 发包
pnpm -r publish
# 1-5 得到 1.0.1 版本
12 months ago
1 year ago