Skip to content

fix(updater): 用户工作空间位于安装目录下时,版本更新不得误删用户工作目录及文件 #120

Description

@yaojin3616

问题背景 / Background

部分用户可能会将工作区(Workspace)或项目代码直接创建/存放在客户端的自定义安装目录中(例如 D:\dsh-desktop\my-project 或安装根目录下)。

在客户端执行版本更新或安装器覆盖升级(如 Windows NSIS 卸载旧版重装流程)时,若安装器采用递归清空或整体删除安装目录的策略,可能导致用户的工作空间、项目代码及本地数据被误删,造成严重的数据丢失风险。

期望行为 / Expected Behavior

  1. 精准更新应用内部文件
    • 自动更新与安装器覆盖升级时,仅精准替换属于客户端自身的程序资源与依赖(如 resources/app、可执行文件、核心动态链接库等);
  2. 严禁全量递归清空安装目录
    • 严禁在升级卸载阶段直接删除整个 $INSTDIR 根目录;
    • 对未识别为系统分发的非应用文件及子文件夹(用户工作区、自定义配置、git 仓库等)予以严格保留。

价值 / Motivation

  • 保护用户数据安全:消除覆盖安装导致用户本地项目与工作区代码丢失的毁灭性风险。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions