ABDiff 帮助

文本合并

文本合并将文件两个版本中的更改合并为一个可编辑的结果。冲突发生在两处更改彼此不兼容、需要你做出决定时。

布局

这个界面显示同一个文件的三个版本。

基准

还有第四个版本:基准,也就是双方开始时共同的原始版本。这对应 Git 的三方合并模型:

Local → Base ← Remote
          ↓
        Result

在 ABDiff 中,中间窗格可以在 结果基准 之间切换,帮助你理解究竟改了什么。

冲突

当双方以不同方式修改同一行时,就会发生冲突。例如,原始值是 “blue”,现在一边改成 “green”,另一边改成 “red”。Git 无法判断哪个更改才是正确的,因此需要手动解决。

不兼容的更改

这种情况会在两个人同时编辑同一行时出现。如果更改没有重叠,Git 会自动合并;如果重叠了,就需要你手动解决冲突。

如果你已经配置 Git,当 Git 发现冲突时,ABDiff 会启动。结果区域会保持未解决状态,你需要决定它的内容。你有三个选择:

解决冲突

要接受某个结果,请右键点击冲突块,然后选择 采用本方版本解决采用对方版本解决

右键点击任意一行即可查看可用操作

如果你想自己写结果:

提示:

完成

完成后,保存文件(文件 ▸ 保存 或 ⌘S)。这会告诉 Git 冲突已经解决。

如果你不想解决冲突,直接关闭文件而不要保存即可。

编辑和导航

导航

操作 快捷键
上一行 / 下一行 ↑ / ↓
上一个窗格 / 下一个窗格 ← / →
跳到第一行 / 最后一行 ⌘↑ / ⌘↓
上一个更改 / 下一个更改 ⌥↑ / ⌥↓
上一个更改块 / 下一个更改块 ⌥↑ / ⌥↓
切换到其他面板

复制

操作 快捷键
复制到右侧 ⌘→
复制到左侧 ⌘←
扩展选择 ⇧↑ / ⇧↓
采用本方版本解决 ⇧⌘→
采用对方版本解决 ⇧⌘←

选中的行会显示为灰色矩形。更改块是连续的冲突 / 更改块。只有当复制操作会修改 结果 窗格,且当前选择位于真实行上时,这些操作才可用。按住 Shift 点击某一行,也会在同一窗格内扩展当前选择。

复制更改:

所有复制操作都可以用⌘Z撤销。

编辑

操作 快捷键
开始编辑所选结果行 Return
直接开始编辑结果行 双击行
提交并移动到下一个可编辑行 Return(编辑时)
提交并退出编辑模式 Command-Return
取消当前行缓冲并退出编辑模式 Esc 或 Command-.

也可以通过双击某一行开始编辑。 所有编辑操作都可以使用⌘Z撤销。

查看选项

文本合并提供一些选项,用于更改比较的计算方式或显示方式。这些选项可在选项菜单中找到。

这些设置会影响匹配和可视化;它们不直接编辑文件。

相关主题