• 源文件source/_posts/electron-qa-prod-coexist-install.md(原文已从仓库删除,摘要保留于此)
  • 分类:工程化与运维
  • 标签:构建与部署、跨平台
  • 日期:2026-05-28 10:00:00

摘要

作者在 Narrative IDE 打包实践中发现:仅通过 APP_UPDATE_ENV 区分 QA / 正式的更新源时,本机安装仍会覆盖而非共存。根因是 electron-builder 的 appId / productName 相同,安装器视为同一应用。共存需按渠道配置不同 identity,并建议隔离 userData;便携版仅作临时方案。

要点

  1. APP_UPDATE_ENV ≠ 安装 identity:前者管 latest.yml、运行时 API 等;后者由 appId + productName 决定。
  2. 推荐:QA 示例 com.narrative.ide.qa + Narrative IDE (QA);正式保持 com.narrative.ide + Narrative IDE
  3. userData:默认常共用 narrative-ide 目录;app.readysetPath 按渠道后缀隔离。
  4. 与四月 electron-updater 讨论:更新投递 vs 本机双安装,正交问题。

另见


摘要与要点:Cursor Agent(Composer),2026-05-28。