Polymerium
进阶

工作区

对比游戏内修改与整合包源并同步回去——面向整合包开发者的 diff 与合并工具。

Last updated on

这是给谁用的?

工作区面向整合包开发者——创建和维护整合包的人。

如果你导入的是别人的整合包,通常不需要这个功能。import/ 是包源,游戏从 build/ 正常运行。你可能打开工作区的唯一情况是:某个文件坏了,要从 import/ 还原到工作副本——但很少见。

要解决的问题

开发整合包时你会在游戏里改配置:画质、模组配置、世界生成等。这些修改落在 build/ 下的工作副本里——也就是来自 import/ 的那些文件在运行时的状态。import/ 本身保持不动。

你改过配置,却不知道哪些文件变了、如何提升回整合包。这就是工作区要解决的问题:在工作副本与 import/ 之间做同步。

打开工作区

  1. 选中你的实例。
  2. 切换到 工作区 标签。

工作区比较 import/(源)与 build/ 下的工作副本。

理解差异

工作区列出与整合包源工作副本相关的已变更普通文件。它忽略投影的符号链接,依据修改时间而非文件内容判断差异:

类型含义
Updated(已更新)工作副本比 import/ 新(游戏内修改后的常见情况)
Outdated(已过期)import/ 比工作副本新
Deleted(源文件已删除)build/ 中保留曾投影的工作副本,但 import/ 中的来源文件已不存在

示例:配置微调

你在游戏内修改设置后,build/config/ 中工作副本的修改时间可能比 import/config/ 中的源文件更新。同步前请打开文件核对内容:两个文件修改时间相同也可能内容不同。

同步变更

有两个同步方向,用途不同。

提升:工作副本 → import(主方向)

这是主要工作流。当你在工作副本中看到想保留进整合包的修改时:

  1. 在工作区选中文件。
  2. 点击 同步到 Import。
  3. 文件从 build/ 下的工作副本复制到 import/。

该变更成为整合包源的一部分,导出或更新时会带上。

可以多选一次同步——适合调完一堆配置之后。

恢复:import → 工作副本(辅方向)

如果游戏内改坏了文件,而整合包源中的原文件仍存在,可以还原源文件版本:

  1. 在工作区选中文件。
  2. 点击恢复。
  3. 文件从 import/ 复制到 build/ 下的工作副本,覆盖本地修改。

这会恢复整合包对该文件的原始版本。

对于 Deleted 状态,还原会删除仅存的工作副本,因为整合包源中已经没有可复制的原件。如果要把该文件保留在整合包中,请改用同步到 Import。

整合包作者工作流

工作区的主要用法:

  1. 搭好整合包,把初始配置放进 import/。
  2. 启动游戏在游戏内完成配置(修改进入 build/ 下的工作副本)。
  3. 打开工作区审查变更。
  4. 把确认的修改从工作副本提升到 import/。
  5. 导出或提交到 Git。

迭代整合包时重复这个循环。

与 Git 的关系

若你用 Git 管理整合包(见 整合包开发),工作区自然嵌入版本控制:

  1. import/ 由 Git 跟踪。
  2. build/ 与 persist/ 在 .gitignore 中。
  3. 工作副本 → import/ 提升 → 再 git commit。

可以把 build/ 下的工作副本当作包文件的工作树,import/ 当作暂存区,git commit 当作最终步骤。

On this page