前言¶
合并、变基或 cherry-pick 之后,工作区里出现 <<<<<<< / ======= / >>>>>>>,往往不只是「选 ours 还是 theirs」这么简单:两边改的是同一行,但意图可能互补,也可能互相覆盖。手工翻 diff 再问同事,会拖慢合入节奏;只让模型泛泛讲 Git 命令,又容易缺上下文、给不出可替换的代码块。
下面介绍 SkillHub 上的社区 Skill Git冲突解决(坐标 @user_70c2f807/git-conflict-resolver,版本 1.0.0)。它用标准 SKILL.md 约束 Agent:在用户粘贴带冲突标记的片段时,按固定步骤分析原因、给出多方案与本地操作清单,并明确不替你在本机执行 git。
这是什么¶
Git冲突解决 是发布者 user_70c2f807 在 SkillHub 上架的 dev-programming 类社区 Skill,当前版本 1.0.0,标签 requires_api_key=false(无需 API Key)。SkillHub 页面显示评分 100000,下载约 1263 次(统计以 SkillHub 为准)。
定位一句话:当用户提到 Git 冲突、合并冲突、merge conflict,或请求解决代码合并冲突时启用;不用于 Git 入门教程、代码审查、分支策略设计或 CI/CD 配置。
官方入口:
- SkillHub 页面:https://www.skillhub.cn/skills/user_70c2f807/git-conflict-resolver
- API 坐标页:https://api.skillhub.cn/user_70c2f807/git-conflict-resolver
核心功能¶
以下能力均来自该 Skill 的 SKILL.md 说明,Agent 按文档执行而非调用独立可执行程序。
- 解析冲突标记:识别 HEAD 与合入分支两侧的修改内容。
- 分析冲突原因:说明双方为何在同一区域产生冲突、是否存在逻辑依赖。
- 多方案输出:通常给出保留当前分支、保留合入分支、合并双方修改三种思路,并说明影响与适用场景。
- 合并后检查:从语法与逻辑一致性角度提醒风险,并建议测试步骤。
- 策略与预防:可对比 rebase / merge / squash 等策略,并给出减少冲突频率的实践建议。
- 异常与误用提示:例如无冲突标记、片段过短、多处冲突、二进制文件冲突等,文档中配有对应提示语。
重要限制(Skill 要求 Agent 提前告知用户):
- 必须提供含冲突标记的代码;
- 不执行任何 Git 命令,只给出方案与可粘贴的代码;
- 分析仅基于用户提供的上下文,业务正确性由开发者最终确认。
安装与启用¶
安装方式遵循 SkillHub 官方说明 skillhub.md:先确认 CLI,再用 skillhub install 把 Skill 装进当前 Agent 的 skills 目录(须带 --dir,否则默认 ./skills/ 可能不被识别)。
1、检查 SkillHub CLI
command -v skillhub && skillhub --version
未安装时可按官方文档执行完整安装或仅 CLI:
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash
2、安装本 Skill
搜索可见坐标 @user_70c2f807/git-conflict-resolver;安装示例(将 <skills 目录> 换成你当前环境的路径):
skillhub install @user_70c2f807/git-conflict-resolver --dir <skills 目录>
或使用命名空间形式的等价写法:
skillhub install git-conflict-resolver --namespace user_70c2f807 --dir <skills 目录>
3、常见 Agent 的 skills 目录(摘自 skillhub.md)
- Cursor:
~/.cursor/skills/ - Claude Code:
~/.claude/skills/ - Codex:
~/.codex/skills/或项目下的.agents/skills/
安装后按你所用客户端的要求重启或刷新 Agent,使 SKILL.md 被加载。也可将官方安装提示发给 AI:「请根据 https://skillhub.cn/install/skillhub.md,安装 @user_70c2f807/git-conflict-resolver。」
典型用法¶
Skill 文档中的触发与对话示例可复现如下。
粘贴冲突片段,请求解决
用户:帮我解决这个Git冲突 [粘贴冲突代码]
→ Agent:分析冲突原因,提供解决方案
在两侧之间做选择
用户:应该保留哪边的代码?
→ Agent:分析两边代码的意图,给出建议
合并后是否可信
用户:合并后代码能正常运行吗?
→ Agent:检查合并后的逻辑完整性
减少再次发生
用户:怎么避免以后出现这种冲突?
→ Agent:提供预防冲突的最佳实践
工作流选择
用户:rebase还是merge好?
→ Agent:对比两种策略的优劣和适用场景
Agent 按 Skill 约定的四步执行:接收冲突代码 → 分析双方意图与依赖 → 给出 A/B/C 方案 → 验证建议(语法、关联文件、测试)。输出中会包含冲突文件、原因、各方意图、推荐方案下的完整替换代码,以及从替换到 git add、继续 commit 或 rebase --continue 的操作步骤(具体 git 命令由你在本地执行)。
适用场景与注意¶
适合谁
- 已在 merge / rebase / cherry-pick 中产生文本冲突,需要结构化分析和可粘贴方案的开发人员。
- 希望 Agent 同时解释「为什么冲突」和「怎么收尾提交」,而不是只背命令的场景。
不适合什么
- Git 零基础学习、团队分支模型设计、代码审查替代、大规模 codemod 迁移(Skill 文档中列出了不适用场景与替代方向)。
使用注意
- 粘贴代码前建议脱敏(密钥、内部 URL 等);Skill 声明不存储代码片段、不执行 Git、仅用于当次分析。
- 不要在不提供冲突标记的情况下期望准确方案;二进制冲突需选择保留哪一版,不能靠文本合并。
- SkillHub 元数据中的「安装」计数可能与实际 CLI 安装量不一致,以你本机
skillhub install是否成功为准。
结尾¶
Git冲突解决 把「看标记 → 懂意图 → 多方案 → 本地提交」写进 Agent 技能文档,适合在 IDE 里把冲突片段交给 AI 协同时,减少盲目选 ours/theirs。如需查看元信息与安装入口,可打开 SkillHub 页面:https://www.skillhub.cn/skills/user_70c2f807/git-conflict-resolver 。