合并文本文件的三个版本
以共同祖先合并本地与远端编辑,查看冲突并保存完整选择结果。
所选文件仅在点击运行后读取。读取、检查与处理共同计入整个 10 秒任务期。
输入、工作量与完整输出上限约束整个请求;超过任一项会拒绝结果,详见工具限制。
共同祖先
本地版本
远端版本
合并输出
这里是有界预览;完整诊断、匹配项和来源信息仍保留在完整复制与下载中。
开始之前
以共同祖先合并本地与远端编辑,查看冲突并保存完整选择结果。
如何使用
- 在独立面板打开或粘贴共同祖先、本地版本及远端版本。
- 点击运行,在整个任务时限内读取有效来源。
- 查看合并输出和每处冲突的三个版本内容。
- 选择处理方式或编辑自定义文本;任一源变化时清除旧选择。
- 全部解决后保存 merged.txt;未解决时保存 conflicted.txt,并同时保存 merge-report.json。
- 把审查后的保存结果手动导入原编辑器或流程,保留原文件与合并报告。
支持范围与限制
分别提供 base、local 和 remote。每份严格 UTF-8 文本最多 1 MiB、4,000 个精确行 token。base 行数 ×(local 行数 + remote 行数)最多 4,000,000 个比较单元。
固定使用 node-diff3 3.2.1 的 Hunt–McIlroy 行合并。CRLF、CR、LF 及末尾无换行均保留在行 token 中。要保留原换行请打开文件;文本框编辑可能统一换行。
相同编辑只出现一次。未解决冲突保留 LOCAL/BASE/REMOTE 标记并明确显示未解决;全部解决后下载 merged.txt。报告与结果文本合计最多 8 MiB。
每个冲突可选本地、祖先、远端、本地后远端、远端后本地,或最多 1 MiB 的自定义 UTF-8 文本。复制入 Worker 前的紧凑处理选项最多 8 MiB,活动选择仍受完整输出上限约束。默认未解决。输出 BOM 可取 base/local/remote 或不加;默认取 base。
冲突标记使用 LF。遇到无末尾换行的片段时按需插入分隔 LF,并记录 UTF-16 位置。不进行语法语义合并,也不修改仓库。
每个角色使用粘贴文本或恰好一份所选 UTF-8 文件;空文本与真实零字节文件都是合法合并来源。无效的所选文件不会回退到隐藏粘贴内容;文件名标签最多 512 个 UTF-8 字节。
移除并记录一个开头 BOM,粘贴输入亦如此。拒绝无效 UTF-8、不成对的 Unicode 代理字符;输入在本浏览器处理。
整个任务固定 10 秒时限或取消后不提供部分制品。修正输入后重试,每次任务使用新 Worker。
文件选择仅读取元信息;整个固定 10 秒任务期从点击运行开始,包含引擎加载、输入检查、读取、导入和合并。取消或被拒绝的请求不发布部分复制或下载。
冲突 ID 必须属于当前输出;不存在或未启用的 ID,以及附在其他选择上的自定义文本都会被拒绝。三个各 4,000 行角色最多产生 12,000 个 ID;任一来源改变会取消活动任务,并清除旧选择与结果。
第四面板是有界输出预览;复制保留全部合并文本,merge-report.json 保留所有块、冲突、来源与选择。完整复制与下载都保留所选开头 BOM,UTF-8 字节一致,并报告精确字节数与 SHA-256。
工作台接受手动导出的来源,生成供手动导入的文件;不调用 Git CLI/mergetool、不修改仓库、不验证代码语义,也不自动标记仓库冲突已解决。内容与名称仅留在当前标签页的有界内存中。
操作示例
示例输入
base: a\nb\nc\nd\ne\n; local: a\nL\nc\nd\ne\n; remote: a\nb\nc\nR\ne\n
示例参数
bom=base;resolutions={}(专用控件)示例输出
a\nL\nc\nR\ne\n; merged.txt + merge-report.json
出现问题时
确认共同祖先与三份角色;超限时减少行比较工作量后重试。仍有冲突时保留“未解决”标识,直到每处冲突都有明确选择。 空源合法;取消后可用相同角色重跑。来源改变后,应检查新的冲突 ID 并重新选择处理方式。
常见问题
可以使用空源吗?
可以。三个角色均允许空粘贴文本或真实零字节文件;三份空源产生已解决的空文本,不会启用其他隐藏输入。
输出 BOM 如何处理?
每份来源移除并记录一个开头 BOM;可取祖先、本地、远端或不加,默认祖先。沿用来源时,仅在该来源原本含 BOM 时添加;完整文本复制与下载共同遵循所选策略,保留相同开头 BOM,UTF-8 字节一致。
选中某一方会自动解决仓库冲突吗?
不会。应用选择后重新计算完整合并,保存结果,再在自己的流程中手动检查/导入;未解决输出名为 conflicted.txt,而非 merged.txt。