You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何撤销Salesforce组织中错误部署的代码更改?

Salesforce Sandbox 撤销错误代码部署的可行方案

Sandbox 本身没有生产环境那样的原生一键回滚按钮,以下是按操作优先级排序的可落地方案,覆盖绝大多数场景:

  • 优先通过版本控制系统(VCS)回滚
    这是风险最低、最稳妥的方案,适合所有有规范代码管理的团队:

    1. 在Git等版本管理工具中定位到错误部署前最后一个正确的提交节点,拉取对应分支代码
    2. 对比本次错误提交的差异清单,仅筛选出你误部署覆盖的文件,不要全量回滚,避免冲掉你部署之后其他同事提交到Sandbox的未同步改动
    3. 本地校验代码完整性、和被覆盖代码的开发者确认内容无误后,重新部署到目标Sandbox即可。
  • 通过 Salesforce CLI 直接回滚部署任务
    如果你是用sfdx完成的错误部署,可以直接用官方命令快速回滚:

    1. 本地终端执行 sf project deploy list -u <目标Sandbox别名>,列出近期所有部署记录,找到对应错误部署的Job ID
    2. 执行回滚命令 sf project deploy rollback -i <错误部署的Job ID> -u <目标Sandbox别名>,工具会自动撤销该次部署引入的所有元数据变更
      注意:该方式仅支持sfdx发起、部署成功且未超过3天的任务,执行前建议先拉取当前Sandbox全量元数据做本地备份,避免意外丢代码
  • 手动通过元数据版本历史恢复
    如果没有版本管理记录、也没有留存sfdx部署日志,可以走平台自带的版本恢复能力:

    1. 针对Apex类、触发器、Lightning组件、Visualforce页面/组件这类带版本记录的元数据:进入Setup的对应元数据管理页,找到被覆盖的条目,打开「版本历史」 tab,选择误操作前的最后一个历史版本直接恢复即可
    2. 针对无版本历史的元数据类型:查找最近一次从该Sandbox拉取的本地代码备份、或Sandbox最近一次刷新时的初始快照,提取被覆盖的代码文件重新部署。
  • 极端场景兜底方案
    如果以上方式都无法找回被覆盖的代码,可以联系Salesforce支持申请将Sandbox恢复到错误部署时间点前的快照。该操作会清除快照时间点之后Sandbox内所有的代码、配置、测试数据改动,必须提前和全团队同步确认影响范围,非必要不使用

所有回滚操作完成后,必须执行对应模块的单元测试验证功能正常,同步告知相关开发同事核对代码内容,避免回滚遗漏引发二次问题。

内容的提问来源于stack exchange,提问作者Shiv Patel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 14:27:18