shopify theme pull 把线上主题设置覆盖了怎么恢复
现象#
执行 shopify theme pull 后本地 config/settings_data.json 变成商家的配色与首页区块,自己改的默认值全部消失;再 push 一次,线上布局被本地旧结构反向覆盖。
原因#
- pull 默认全量下载,settings_data.json 存的是商家在编辑器里改过的运行时配置
- 该文件的 current 段由后台写入,与 presets 默认值合并后才决定前台呈现
- 本地被覆盖后若无 git 提交,CLI 不保留备份,只能从编辑器历史或旧构建找回
- 主题含多个 preset 时 pull 按 --listing 选择,未指定就落到默认预设
处理步骤#
- 先停手,用
git diff config/settings_data.json确认工作区或 stash 里是否还有原文 - 把设置拆开管理:只提交
config/settings_schema.json与 presets,不跟踪线上 current - 需要同步代码时限定范围:
shopify theme pull --only templates/ --only sections/ - 拉代码时忽略设置:
shopify theme pull --ignore config/settings_data.json - 上线用
shopify theme push -x config/settings_data.json,设置留在远端
验收标准#
pull 之后 git status 不再出现 settings_data.json 变更,编辑器里的配色与首页区块保持原样。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。