跳到主要内容

三方文本差异与合并查看器

将两个编辑后的文本版本与共同的基础版本进行三方对比合并(类似 Git merge)。自动解决非冲突的编辑,并通过逐行状态表报告冲突。

输入

当本地和远程对同一行做了不同修改时,以哪一方为准。

输出

合并结果

摘要

结果
指标
No data yet

逐行差异

结果
状态基础版本本地版本远程版本
No data yet
这对您有帮助吗?

使用指南

什么是三方文本差异与合并?

三方合并会比较文档的两个编辑副本——本地版本和远程版本——与它们共同的基准版本(即共同祖先)进行对比。这正是 Git、Mercurial 等版本控制系统在合并分支时所做的工作,但本工具可以对任何纯文本执行此操作:配置文件、文章、代码片段、CSV 行,以及其他基于行的内容。

与普通的双向差异对比(只告诉你什么发生了变化)不同,三方合并还能告诉你修改了内容,以及编辑是否可以自动合并:

  • 双方都未修改的行保持不变。
  • 只有一方修改的行会自动合并。
  • 双方做了相同修改的行视为一次达成一致的更改。
  • 双方做了不同修改的行会被标记为冲突,需要你手动解决。

如何使用

  1. 粘贴基准文本——即原始的共同祖先版本。
  2. 粘贴本地远程版本——即从基准版本出发、各自产生分歧的两个版本。
  3. 选择冲突时的处理方式:显示 Git 风格的冲突标记(<<<<<<< / ||||||| / ======= / >>>>>>>)以便手动解决,或者自动解决所有冲突——优先使用本地版本、优先使用远程版本,或回退到基准文本。
  4. 合并结果框中查看合并后的文本,在摘要表中查看冲突数量统计,在逐行差异表中查看每个未更改、已更改或冲突区域的完整明细。

结果会在你输入时实时更新——无需点击按钮。

冲突是如何检测的

该工具使用最长公共子序列(LCS)行差异算法,将每个版本的行与基准版本对齐——这与大多数文本差异工具使用的技术相同。在本地和远程差异中找到的匹配行将三个文本锚定在一起;两个锚点之间的内容作为一个块进行比较。只有当双方都修改了同一个块修改内容不一致时,才会被判定为冲突——如果只有一方进行了修改,则始终会干净地合并。

常见问题

这能替代 git merge 吗? 不能——它是一个轻量级的浏览器端近似工具,适用于在 Git 工作流之外合并文本(例如两个人编辑同一份文档,或协调配置偏差)。它不会影响你的仓库或文件系统。

冲突标记是什么意思? <<<<<<< LOCAL======= 之间是你本地版本中产生冲突的行;=======>>>>>>> REMOTE 之间是远程版本中产生冲突的行;中间的 ||||||| BASE 部分显示原始文本以供参考——这与 Git 在合并冲突中使用的约定相同。

为什么我没有修改的某一行被标记为已更改? 差异对比是基于整行进行的。如果某一行因为上方的行被添加或删除而改变了位置,LCS 算法可能会以不同的方式重新匹配它。将长段落拆分成较短的行通常能获得更精确的结果。

有大小限制吗? 有——每个版本最多 2,000 行,以确保浏览器中的比较速度。较长的文档应拆分为较小的部分。

隐私

所有操作完全在你的浏览器中进行。你的文本绝不会被上传或发送到服务器。

diffmergetext-comparegitconflict-resolution

Use it from code

From 3 credits per call

REST API

curl -X POST https://api.iotools.cloud/v1/tool/3-way-text-diff-merge-viewer \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "baseText": "Line1\nLine2\nLine3",
    "localText": "Line1\nLine2 changed by local\nLine3 local edit",
    "remoteText": "Line1\nLine2\nLine3 remote edit\nLine4",
    "conflictStrategy": "markers"
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `3-way-text-diff-merge-viewer` tool (3-Way Text Diff & Merge Viewer) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

工作流的一部分

全部工具集

喜欢这些工具?去掉广告吧。

一次性付款即可永久移除您账户中的所有广告。无需订阅,不追踪。