mmerge
是一个命令行工具,它能将 madp 组件/页面的创建和更新工作自动化,减少人工操作带来的误差。
mmerge
在合并 schema.json 文件前,会将涉及改动的原始文件备份,防止合并失败导致原文件丢失,并且 mmerge
提供了回滚指令,支持将指定的合并操作撤销。
对于组件类型的新增,可以使用mmerge ui
命令,在图形界面中完成操作。
mmerge
使用的默认 madp 配置为
madp_location = "./example/testapp" # madp文件夹地址
output = "." # 任务输出地址
如果需要修改配置,可以通过输入指令mmerge init
在当前目录下生成一个 config.toml 文件
输入命令建立一个合并任务
mmerge add [taskid]
taskid
可以是任何可作为文件夹名称的字符,建议包含日期等方便描述版本的标志,例如
mmerge add task-20230311
注意:此操作会被覆盖同名任务产生的资源
参数 | 说明 | 示例 |
---|---|---|
--config | 配置文件路径 | mmerge add --config D:\\path\\to\\a\\task.config.toml |
未指定配置文件的情况下,mmerge
将应用默认配置:
# 注意:不用的配置用空字符串或空数组,不要删掉
[app_config] #应用配置
app_id = "default" # 应用id
[pre_publish_config] #定时发版
time = "2023-08-03 22:00:00"
version = "1.1.4.589"
check_unit = 30000
[class_page] #页面类型(一般不会改)
pages = []
names = []
[class_component] #组件类型
components = []
names = []
sub_schema = []
# mmerge仅支持新增页面,页面实例的修改需要考虑不同环境的差异,请手动操作
[instance_page]
pages = []
names = []
types = []
sub_schema = []
[instance_component] #组件实例
components = []
names = []
types = []
sub_schema = []
[stage] #场景
# example:
stage_ids = []
你可以使用mmerge print
指令打印当前使用的配置
程序执行完成后,会在当前目录生成一个名为[taskid]
的文件夹,其中包含以下内容
├─taskid # 任务文件夹
├─backup
│ └─components
├─class
│ └─components
├─instance
│ ├─components
│ └─pages
├─stage
└─task.config.toml
如果命令提供了--config
参数,task.config.toml
文件将会使用指定文件的内容
将需要发布的页面类型文件、组件类型文件、组件实例文件分别放入taskid/class/pages
、taskid/class/components
、taskid/instance/components
文件夹
如果需要合并场景配置,将你的stage.json
文件放入taskid/stage
文件夹
mmerge run [taskid]
mmerge
将比对你提供的页面类型和组件类型文件,复制文件并修改config.schema.json
文件,如果原配置已经注册了同名 schema.json 文件,将覆盖原页面/组件文件,并更新在config.schema.json
中注册的页面/组件类型名称
对于组件实例,将复制并覆盖所有实例文件,在_list.json
文件头部添加新组件,修改同 id 组件配置
mmerge
会比对任务中的stage.json
和目标的stage.json
文件,在头部添加新场景,修改同 id 场景配置
对于场景,建议从生产环境下发一份场景配置表,各环境统一后再进行合并操作
mmerge
在合并过程中遇到异常,将回退所有涉及改动的文件
如果合并成功后发现配置异常,或其他原因需要回退到原来的配置,可以执行回退命令:
mmerge rollback [taskid]
此命令将此任务保存的备份文件复制回到 madp 配置目录,所以建议只回退最近的版本
mmerge 支持定时发版,创建完成任务后,在 task.config.toml 文件的pre_publish_config
配置项中,可以配置定时发版的时间,需要发布的版本号,编辑完成后,使用命令
mmerge publish [taskid]
执行定时发版任务
命令mmerge ui
可以运行一个本地服务器,打开浏览器输入http://127.0.0.1:1644
可以通过图形界面完成组件类型新增操作
参考环境配置
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。