# 经验记录 本文件用于记录个人简历构建项目修改过程中的关键问题与解决方案。每条经验使用四段式结构。 ## 2026-05-19-23-10-56 Reactive Resume PDF 下载文件名修改 A. 具体问题 用户希望浏览器下载 PDF 时的文件名从 `ZhiboWang-Resume.pdf` 改为 `王志博-医工智能外科-简历.pdf`,当前 DICOM 项目中没有该文件名,需要定位真实项目。 B. 产生问题原因 该下载文件名不是 DICOM 项目功能,而是个人简历构建项目中的 Reactive Resume 容器补丁脚本硬编码。Reactive Resume 的前端 public JS 和 SSR 文件都需要同步修改,且浏览器可能缓存旧静态资源。 C. 解决问题方案 在 `/home/wkmgc/Desktop/个人材料编写/个人简历构建` 中定位到 `scripts/patch-reactive-resume-filename.sh`,将 shell 与 Node 补丁逻辑中的 PDF 文件名统一改为中文文件名;同时把 cache bust 更新为 `rr-filename-20260519-cn`,并让 import 替换逻辑兼容旧 cache bust。执行脚本后容器重启并恢复 healthy。 D. 后续如何避免问题 涉及线上下载文件名时,应先全局搜索目标文件名并确认真实项目;修改容器补丁脚本后必须立即运行脚本、验证容器内 public/SSR 文件、验证 HTTP 静态资源和服务健康,避免只改脚本未生效。 ## 2026-05-19-23-10-56 Reactive Resume Gitea 推送凭据缺失 A. 具体问题 本次本地备份 commit 已创建,但执行 `git push origin main` 时失败,Git 提示无法读取 `http://192.168.31.5:5002` 的用户名。 B. 产生问题原因 当前 `origin` 使用 HTTP Gitea 地址,执行环境没有交互式凭据输入,也没有已配置的凭据助手。 C. 解决问题方案 保留本地 commit,不把账号密码写入命令、文档或 Git remote。将推送失败写入测试方案和经验记录,后续由用户配置安全凭据或改为 SSH remote 后再推送。 D. 后续如何避免问题 Gitea 推送前先检查认证方式。优先使用 SSH 或安全凭据助手;如果 HTTP remote 需要 token,应通过安全环境变量或凭据管理器提供,不要直接拼进 URL。 ## 2026-05-19-23-23-50 回滚错误的 PDF 下载文件名指令 A. 具体问题 用户说明上一条修改 PDF 下载文件名的指令写错了,需要撤销中文文件名变更。 B. 产生问题原因 上一条需求将 Reactive Resume 的 PDF 下载文件名从 `ZhiboWang-Resume.pdf` 改为中文文件名;之后最新提交又把中文文件名调整为不带短横线版本。只回滚最新提交会仍然保留中文文件名,不能真正回到原始状态。 C. 解决问题方案 以原始文件名 `ZhiboWang-Resume.pdf` 为目标,直接恢复 `scripts/patch-reactive-resume-filename.sh` 中 shell 与 Node 两处文件名常量,并恢复 cache bust 为 `rr-filename-20260519`。随后重新执行补丁脚本,让运行中容器 public JS 与 SSR 文件同步恢复。 D. 后续如何避免问题 用户要求回滚时,先确认要回到哪一个历史状态,而不是只撤销最近一个 commit。涉及线上容器补丁时,Git 文件回滚后必须重新执行补丁脚本并验证 HTTP 静态资源。