Disconnected Session报错后如何恢复未保存的IDE开发进度?
IDE无响应未保存代码抢救方案
优先级最高:不终止进程的抢救操作
- 先等待10~15分钟,不要重复点击IDE界面触发额外操作。当前报错场景下IDE无响应多为程序抛出异常后,IDE正在生成错误栈、运行时快照或执行资源回收,临时阻塞概率很高,负载释放后会自动恢复响应
- 生成进程内存转储,留存当前所有运行数据:
- Windows:打开任务管理器,找到对应IDE进程,右键选择「创建转储文件」,按提示保存转储文件即可
- macOS:打开活动监视器,选中IDE进程后点击顶部「spindump」生成采样文件,也可执行命令
lldb -p [IDE进程ID] && process save-core [转储文件保存路径]生成完整核心转储 - Linux:直接执行命令
gcore [IDE进程ID]即可生成核心转储文件
- 调用IDE命令行工具导出未保存内容:主流IDE均支持命令行控制运行中的实例,比如IntelliJ系产品可执行
idea dump-open-editors --output [保存目录]直接导出所有打开的未保存编辑器内容,VS Code可执行code --dump-open-editors [保存目录]完成导出
必须终止进程的后续补救操作
- 终止进程前先完整备份IDE缓存和工作区快照目录:
- IntelliJ系缓存路径:Windows为
C:\Users\[用户名]\AppData\Roaming\JetBrains\[产品名+版本]\,macOS为~/Library/Application Support/JetBrains/[产品名+版本]/,优先备份其中的workspace、unsaved子目录 - VS Code缓存路径:Windows为
C:\Users\[用户名]\AppData\Roaming\Code\Backups,macOS为~/Library/Application Support/Code/Backups - Eclipse缓存路径:工作区根目录下的
.metadata/.plugins/org.eclipse.core.resources/.history目录
- IntelliJ系缓存路径:Windows为
- 重新打开IDE后优先处理自动弹出的「恢复未保存文件」提示,若未弹出可手动进入IDE的「本地历史记录」功能,调取自动生成的隐式快照——主流IDE默认每30~60秒会自动生成一次未保存变更快照,无需手动触发保存,90%以上的场景都可以直接恢复全部未保存内容
恢复后操作
- 对比恢复内容与最后一次代码提交的差异,确认所有变更完整无误后,立刻手动保存全部文件或执行代码提交。
内容的提问来源于stack exchange,提问作者Codrut
相关产品推荐
相关产品推荐

