SKILL.md
readonly只读
name
resolve-merge-conflicts
description
解决 Git 合并冲突,仅提取未解决路径、冲突块和紧凑差异,而非将整个文件加载到上下文中。在合并、变基、拣选或储藏弹出因冲突停止时,当 `git status` 显示未合并路径时,或当文件包含冲突标记时使用。
解决合并冲突
概述
在紧凑视图不足以解决问题之前,无需打开完整文件即可解决冲突。从摘要开始,然后逐个检查冲突文件。
工作流程
- 从摘要开始。
python3 .agents/skills/resolve-merge-conflicts/scripts/extract_conflict_context.py
使用摘要识别哪些文件未解决、存在哪些索引阶段以及每个文件包含多少个文本块。
- 深入一个文件。
python3 .agents/skills/resolve-merge-conflicts/scripts/extract_conflict_context.py --file path/to/file
优先使用此方法而非读取整个文件。该脚本仅打印附近的上下文、每个块的 ours / base / theirs 部分,以及 ours 和 theirs 之间的紧凑统一差异。
- 解决文件。
- 在适当的情况下,使用
git checkout --ours -- path/to/file或git checkout --theirs -- path/to/file整体采用一方。 - 否则直接编辑文件并移除冲突标记。
- 仅在紧凑输出不足以决定正确合并时,才读取更多文件内容。
- 重新检查未解决的文件。
python3 .agents/skills/resolve-merge-conflicts/scripts/extract_conflict_context.py
git diff --name-only --diff-filter=U
- 验证解决方案。
- 确保没有未合并的路径残留。
- 确保已解决的文件中不包含
<<<<<<<、=======或>>>>>>>标记。 - 对受影响的区域运行有针对性的测试、构建或代码检查工具。
- 暂存已解决的文件。
命令
仅摘要
python3 .agents/skills/resolve-merge-conflicts/scripts/extract_conflict_context.py
单个文件的详细视图
python3 .agents/skills/resolve-merge-conflicts/scripts/extract_conflict_context.py --file path/to/file
所有冲突文件的详细视图
python3 .agents/skills/resolve-merge-conflicts/scripts/extract_conflict_context.py --all
JSON 输出
python3 .agents/skills/resolve-merge-conflicts/scripts/extract_conflict_context.py --file path/to/file --json
调整输出大小
python3 .agents/skills/resolve-merge-conflicts/scripts/extract_conflict_context.py \
--file path/to/file \
--context 3 \
--max-lines 60
备注
- 在直接打开冲突文件之前,先使用脚本。
- 一次解决一个文件以保持上下文较小。
- 预期会遇到基于标记的文本冲突和仅索引冲突,例如添加/添加或修改/删除。脚本会总结这两种情况,并在工作树文件没有冲突标记时回退到索引阶段预览。






