Git冲突解决:在 Agent 里按流程处理合并冲突

前言

合并、变基或 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 按文档执行而非调用独立可执行程序。

  1. 解析冲突标记:识别 HEAD 与合入分支两侧的修改内容。
  2. 分析冲突原因:说明双方为何在同一区域产生冲突、是否存在逻辑依赖。
  3. 多方案输出:通常给出保留当前分支、保留合入分支、合并双方修改三种思路,并说明影响与适用场景。
  4. 合并后检查:从语法与逻辑一致性角度提醒风险,并建议测试步骤。
  5. 策略与预防:可对比 rebase / merge / squash 等策略,并给出减少冲突频率的实践建议。
  6. 异常与误用提示:例如无冲突标记、片段过短、多处冲突、二进制文件冲突等,文档中配有对应提示语。

重要限制(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 。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye