跳到主要内容
返回学习中心
12运维阅读 10 分钟进阶

指南 12 · 运维

精确切换与回滚

一次安全切换其实是两次已经准备好的安装:你计划激活的目标,以及随时可以恢复的精确旧状态。

最后验证
2026年9月6日
指南源码基线
0.1.3-alpha.1
安装状态
以所选条目的记录为准
验证范围
  • 单一激活直接依赖
  • 精确 rollback 制品记录
  • CLI 与真实运行时后置检查
本页目录
  1. 同时准备切换两端
  2. 只在当前状态匹配时回滚
  3. 保留返回原状态的方法

同时准备切换两端

受支持的 web profile 模型只保留一个 @dsh-themes/* 直接包。切换会先移除旧包再添加目标,所以必须在第一次修改前准备恢复材料。

  1. 01

    检查并识别当前状态

    从 web profile 读取直接包名与精确版本。依赖不明确或存在版本范围时应停止。

  2. 02

    校验目标制品

    让受控下载与完整 artifact SHA-256、manifest 身份、精确兼容性、slug 和 version 一致。

  3. 03

    校验旧制品

    准备旧版本的精确 tgz 与摘要;如果旧状态是内置配色,则明确记录没有 @dsh-themes/* 包。

  4. 04

    写入 rollback 记录

    记录 previous、target 身份,以及已验证制品的绝对路径与完整制品摘要;不要写入 profile 内容或凭据。

  5. 05

    确认即将发生的修改

    移除任何内容前,复核 current、target、兼容性与已准备的回滚信息。

bash
node /absolute/path/to/dsh-theme-manager/scripts/run-dsh.mjs --source plugin --profile web remove @dsh-themes/current-theme
node /absolute/path/to/dsh-theme-manager/scripts/run-dsh.mjs --source plugin --profile web add /absolute/path/to/verified-target.tgz --save-exact
node /absolute/path/to/dsh-theme-manager/scripts/run-dsh.mjs --source plugin --profile web list --json
node /absolute/path/to/dsh-theme-manager/scripts/run-dsh.mjs --source --profile web --dump-config
这只是命令形态。请使用精确包身份与事先校验过的绝对制品路径。

只在当前状态匹配时回滚

  1. 01

    验证记录

    修改 profile 前,拒绝格式错误、字段缺失、文件已移动或身份不匹配的制品引用。

  2. 02

    确认当前 target 仍然匹配

    如果 profile 在切换后又被独立修改,不要直接消费原 rollback 记录。

  3. 03

    重新校验旧制品

    安装前再次检查完整字节;payload hash 不能替代完整制品摘要。

  4. 04

    移除目标并恢复精确旧状态

    安装原来的精确包;若返回内置配色,则不安装任何 @dsh-themes/* 包。

  5. 05

    重启并验证

    确认唯一预期直接依赖,检查 dump config,重启 DSH,再验证真实运行时身份。

始终从已验证输入开始

保留返回原状态的方法

切换前记录当前条目,并准备精确的上一版本包。尝试新风格后,演练一次恢复原状态,确认界面正常加载。

text
把当前主题切换为目录条目 #NNNN。保留精确原状态与包,验证目标、重启并检查界面,再给出恢复上一版本的命令或任务。
可以直接尝试的提示词

常见问题

修改前需要了解的事项

关于格式、兼容性、证据与回滚的简明说明。

这篇指南核实哪些范围?

本指南覆盖:单一激活直接依赖;精确 rollback 制品记录;CLI 与真实运行时后置检查

我应该先做什么?

一次安全切换其实是两次已经准备好的安装:你计划激活的目标,以及随时可以恢复的精确旧状态。

最需要记住的边界是什么?

如果切换中途失败,应移除残缺 target,再安装已经准备好的 previous 制品。稳定状态只能是一个 @dsh-themes/* 直接包,或者内置配色。

旧包总能在新 Alpha 上运行吗?

不能。回滚需要匹配曾经实测的 Harness 版本。应同时保留兼容运行时与包,不要仅凭版本号假定能恢复。

继续学习

查看验证证据并继续操作

对比已发布制品,或返回安装文档。