
冲突期间的限制
存在未解决冲突时,右键菜单中的其他 Git 操作(分支、提交、Stash 等)被禁用,并提示存在未解决冲突,操作已禁用。右侧面板切换为待解决文件列表:.meta 冲突默认隐藏(可展开显示),底部提供继续 / 跳过 / 中止。中止会丢弃当前冲突处理进度,把工作区恢复到操作开始前的状态。
字段级三路合并
点击冲突文件进入解决界面,Unity YAML 资产提供结构化视图:
- 三方对照:
当前版本(你所在分支的改动)、传入版本(对方的改动)、共同基线(两边的共同起点,显示基线可开关)。应用 stash 产生的冲突中,对侧一列为暂存改动。 - 点击来源列中的字段值即完成该字段的选边;也可以用
当前对象都用 X、当前分组都用 X、所有字段都用 X批量选边。 - 只有双方都改动了同一字段才需要选择,仅一侧修改的字段自动解决;
仅显示冲突可以过滤掉无关内容。 - 底部实时显示还需选择的字段数。选择在写回前只是暂存,点击
应用结构化结果才真正写入文件;未应用就离开会丢弃这些选择。
原始文本标签页保留传统的按冲突块逐块选边,适合非结构化文件或需要手工改写的情况。文件在 Locus 外部被修改后,块选择会被禁用,需在下方直接手动编辑结果。
与手工编辑冲突标记相比
在文本编辑器里处理 Unity YAML 冲突,要在<<<<<<< 标记之间比对大段序列化数据:一个字段的取舍夹在几十行上下文中,误删一行就可能破坏文件结构。字段级合并把选择粒度从「这几行用谁的」换成「这个字段用谁的值」,写回由 Locus 完成,避免了错切字段边界、残留冲突标记这类手工风险;对象层级与组件归属在界面中保持可见,判断「该用谁的」也更有依据。
需要基于全部代码上下文做判断的复杂冲突(例如双方重构了同一段逻辑的 C# 文件),仍然可以在底部命令行让 AI 参与分析,或回退到原始文本视图手工处理。