Coding

Git高级操作免费版

Try it

Git 进阶操作助手,涵盖交互式变基、二分查找、工作树与引用日志恢复。Use when 需要AI模型调用、智能对话、Agent编排、LLM应用时使用。不适用于需要100%确定性的关键决策。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

What it does

Git 进阶操作助手,涵盖交互式变基、二分查找、工作树与引用日志恢复。Use when 需要AI模型调用、智能对话、Agent编排、LLM应用时使用。不适用于需要100%确定性的关键决策。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

The skill document

Git 高级操作助手(免费版)

概述

本工具为进阶开发者提供超越基础 add/commit/push 的 Git 操作指引,涵盖交互式变基、二分查找、工作树、引用日志恢复、樱桃挑选等核心场景。通过自然语言指令驱动,帮助开发者清理提交历史、定位缺陷来源、并行处理多分支任务,并在误操作后快速恢复。免费版聚焦个人开发者最常用的高频进阶操作,提供完整的命令模板与示例.

核心能力

能力模块描述典型用法
交互式变基整理、合并、重排、编辑提交帮我合并最近 5 个提交
二分查找定位引入缺陷的提交用 bisect 找到引入 bug 的提交
工作树并行处理多个分支创建工作树处理紧急修复
引用日志恢复恢复丢失的提交和分支恢复误删的提交
樱桃挑选跨分支复制特定提交把这个提交挑选到 main 分支
技术实现要点:核心能力基于input_params参数与output_format配置实现,支持创建/查询/修改/删除等操作模式,通过config_options进行运行时配置.

核心功能执行

input_params参数进行配置.

处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志.

  • 执行此能力时使用input_params参数,支持创建/查询/导出操作

参数配置与调用

config_options参数进行配置.

处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回参数配置与调用的响应数据,包含状态码、结果和日志.

  • 执行此能力时使用config_options参数,支持修改/重置/导入操作

结果处理与输出

output_format参数进行配置.

处理: 解析结果处理与输出的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回结果处理与输出的响应数据,包含状态码、结果和日志.

  • 执行此能力时使用output_format参数,支持导出/保存/转换操作 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:Git、进阶操作助手、涵盖交互式变基、工作树与引用日志、面向进阶开发者的、高级操作工具、add、commit、push、之外的核心进阶场、rebase、整理提交历史、worktree、并行多分支开发、reflog等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持.

使用场景

场景一:合并前清理提交历史

功能分支包含多个琐碎提交,合并前需要整理成清晰的提交序列.

用户:我的功能分支有 5 个琐碎提交,合并前想整理一下
# ...
助手:使用交互式变基
# ...
1. 启动变基
   git rebase -i HEAD~5
# ...
2. 编辑器中会显示提交列表
   pick a1b2c3d 添加用户模型
   pick e4f5g6h 修复模型拼写错误
   pick i7j8k9l 添加用户控制器
   pick m0n1o2p 添加用户路由
   pick q3r4s5t 修复控制器导入
# ...
3. 修改操作指令(合并修复提交)
   pick a1b2c3d 添加用户模型
   fixup e4f5g6h 修复模型拼写错误
   pick i7j8k9l 添加用户控制器
   fixup q3r4s5t 修复控制器导入
   pick m0n1o2p 添加用户路由
# ...
4. 保存退出后自动完成变基
# ...
5. 如需放弃变基
   git rebase --abort
# ...
6. 如遇冲突解决后继续
   git add .
   git rebase --continue

场景二:定位引入缺陷的提交

线上发现一个回归缺陷,需要快速找到是哪个提交引入的.

用户:登录功能在某个提交后坏了,帮我用 bisect 找出来
# ...
助手:
1. 启动二分查找
   git bisect start
# ...
2. 标记当前版本为坏
   git bisect bad
# ...
3. 标记已知正常的版本
   git bisect good v1.2.0
# ...
4. Git 会自动切换到中间提交,测试后标记
   git bisect good   # 这个提交正常
   git bisect bad    # 这个提交有问题
# ...
5. 重复直到定位到具体提交
# ...
6. 完成后重置
   git bisect reset

场景三:同时处理多个分支任务

正在开发功能时收到紧急修复任务,不想丢失当前工作.

# 创建工作树处理紧急修复
git worktree add ../project-hotfix hotfix/urgent-fix
# ...
# 创建新分支的工作树
git worktree add ../project-feature -b feature/new-thing
# ...
# 查看所有工作树
git worktree list
# ...
# 在工作树中完成工作后移除
cd ../project-hotfix
# 完成修复并推送
cd ../project
git worktree remove ../project-hotfix
# ...
# 清理无效的工作树引用
git worktree prune

不适用场景

以下场景Git高级操作免费版不适合处理:

  • 需要100%确定性的关键决策
  • 医疗诊断
  • 法律判决

触发条件

需要AI模型调用、智能对话、Agent编排、LLM应用时使用。不适用于非本工具能力范围的需求.

快速开始

  1. 阅读## 核心能力章节了解skill功能
  2. 按## 依赖说明配置环境
  3. 执行所需能力对应的命令
  4. 参考## 错误处理章节处理异常
  5. 查看## FAQ解答常见疑问

交互式变基命令速查

git rebase -i HEAD~5          # 变基最近 5 个提交
git rebase -i main            # 变基到 main 分支
git rebase --abort            # 取消变基
git rebase --continue         # 解决冲突后继续
git rebase --skip             # 跳过当前提交

变基操作指令:

指令作用说明
pick保留提交使用提交原样
reword修改信息保留提交但修改提交信息
edit暂停编辑停在此提交进行修改
squash合并保留信息合并到上一个提交,保留两条信息
fixup合并丢弃信息合并到上一个提交,丢弃提交信息
drop删除提交完全移除该提交

自动变基(autosquash)

# 创建修复提交(自动标记目标)
git commit --fixup=a1b2c3d
git commit --squash=a1b2c3d
# ...
# 自动整理
git rebase -i --autosquash main

二分查找自动化

# 手动二分
git bisect start
git bisect bad
git bisect good v1.2.0
# ...
# 自动化二分(带测试脚本)
git bisect start HEAD v1.2.0
git bisect run (请参考skill目录中的脚本文件)
# ...
# 示例
cat > /tmp/(请参考skill目录中的脚本文件) << 'EOF'
#!/bin/bash
npm test -- --grep "login should redirect" 2>/dev/null
EOF
chmod +x /tmp/(请参考skill目录中的脚本文件)
git bisect run /tmp/(请参考skill目录中的脚本文件)
# ...
# 跳过无法构建的提交
git bisect skip

响应解析: 完成完成后,查看输出响应确认任务状态。成功时输出包含解析摘要和响应数据;失败时根据错误信息排查问题,查阅错误解析章节获取恢复步骤.

配置示例

引用日志恢复操作

# 查看所有操作记录
git reflog
git reflog show feature/my-branch
git reflog --date=relative
# ...
# 恢复到指定状态
git reset --hard HEAD@{2}      # 回到 2 步之前的状态
git reset --hard ghi789        # 回到指定提交
# ...
# 恢复误删的分支
git branch recovered-branch abc123
# ...
# 查找丢失的提交
git fsck --unreachable | grep commit
# ...
# 查找丢弃的暂存
git stash list
git log --walk-reflogs --all -- stash

樱桃挑选操作

# 挑选单个提交
git cherry-pick abc123
# ...
# 挑选多个提交
git cherry-pick abc123 def456 ghi789
# ...
# 挑选提交范围
git cherry-pick abc123..ghi789
# ...
# 不自动提交
git cherry-pick --no-commit abc123
# ...
# 冲突处理
git add resolved-file.ts
git cherry-pick --continue
git cherry-pick --abort

最佳实践

  1. 变基仅限本地分支:永远不要变基已推送到共享分支的提交

  2. 引用日志是安全网:误操作后 90 天内提交均可恢复

    git reflog
    
  3. 工作树比多克隆更高效:工作树共享 .git 存储,节省磁盘空间

  4. 自动化二分更可靠git bisect run 配合测试脚本消除人为错误

  5. 使用 fixup 提交:开发时用 --fixup 标记,合并前统一整理

    git commit --fixup=目标提交
    git rebase -i --autosquash main
    
  6. 樱桃挑选后测试:跨分支复制提交后务必运行测试

常见问题

Q1:变基时冲突太多怎么办?

# 放弃变基
git rebase --abort
# ...
# 或逐个解决
git status
# 编辑冲突文件
git add .
git rebase --continue
# ...
# 跳过无法解决的提交
git rebase --skip

Q2:bisect 时遇到构建失败的提交?

git bisect skip                    # 跳过当前提交
git bisect skip v1.3.0..v1.3.5    # 跳过指定范围

Q3:如何查看某个文件的历史变更?

# 追踪文件重命名的历史
git log --follow --oneline -- src/auth.ts
# ...
# 查看文件每行最后修改者
git blame src/auth.ts
git blame -L 50,70 src/auth.ts    # 指定行范围
# ...
# 查找字符串被添加/删除的提交
git log -S "function oldName" --oneline
git log -G "TODO.*hack" --oneline

Q4:工作树无法删除怎么办?

# 强制删除
git worktree remove --force ../project-hotfix
# ...
# 清理无效引用
git worktree prune

Q5:如何恢复 reset --hard 丢失的提交?

git reflog                        # 找到丢失的提交哈希
git reset --hard abc123           # 恢复到该提交

Q6:樱桃挑选冲突如何处理?

# 查看冲突文件
git status
# ...
# 解决冲突后
git add .
git cherry-pick --continue
# ...
# 放弃樱桃挑选
git cherry-pick --abort

依赖说明

运行环境

  • Agent 平台: 支持读取 SKILL.md 的任意 AI Agent(Claude Code / Cursor / Codex / Gemini CLI 等)
  • 操作系统: Windows / macOS / Linux
  • Git 版本: 建议 2.20 及以上

依赖详情

依赖项类型是否必需获取方式
Git命令行工具必需系统包管理器安装
LLM APIAPI必需由 Agent 内置 LLM 提供

API Key 配置

  • 本工具为纯 Markdown 指令驱动,无需额外 API Key
  • 自动化二分查找需要可执行的测试脚本

可用性分类

  • 分类: MD+EXEC(Markdown 指令 + 命令行执行)
  • 说明: 通过自然语言指令驱动 Agent 执行 Git 高级操作,所有功能依赖命令行执行能力

错误处理

错误场景原因处理方式
配置错误参数缺失或格式错误检查依赖说明中的配置要求
运行时错误运行环境不满足确认运行环境符合依赖说明
网络错误连接超时或不可达执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案

已知限制

  • 需LLM支持,无LLM环境不可用
  • 复杂业务场景建议结合人工经验判断
  • 执行效率受模型能力与网络环境影响
  • 当前为免费版本,如需完整功能请升级到付费版获取全部能力

示例

基本用法

输出:返回执行结果,包含操作状态和输出数据

用户: 执行核心功能
Skill: 正在执行核心功能...
Skill: 执行完成,结果如下: 操作成功

输出格式

{
  "success": true,
  "data": {
    "result": "Git高级操作免费版处理结果",
    "execution_time": "0.5s",
    "metadata": {
      "version": "1.0",
      "processor": "git workflows"
    }
  },
  "execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
  "error": null
}

Related skills

面向企业级研发团队的 Git 进阶操作专业工具。Use when 需要提升效率、自动化流程、批量处理、工作流优化时使用。不适用于需要人工创意判断的任务。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。提供结构化输出和错误处理机制。

Git 分支管理、冲突解决与提交规范助手,覆盖个人开发者日常版本控制场景。Use when 需要代码生成、编程辅助、调试测试、开发部署时使用。不适用于无明确技术栈的模糊需求。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。提供结构化输出和错误处理机制。

1 installs

面向团队协作与企业研发场景的 Git 工作流专业工具。Use when 需要提升效率、自动化流程、批量处理、工作流优化时使用。不适用于需要人工创意判断的任务。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。提供结构化输出和错误处理机制。

提供Git常见操作辅助、冲突解决指引、提交规范检查与安全操作清单,适合开发者日常使用。Use when 需要代码生成、编程辅助、调试测试、开发部署时使用。不适用于无明确技术栈的模糊需求。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

1 installs

提供Git CLI快速参考、状态检查、暂存提交与分支同步,适合开发者日常命令行操作。Use when 需要代码生成、编程辅助、调试测试、开发部署时使用。不适用于无明确技术栈的模糊需求。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

1 installs

提供Git版本控制核心命令,涵盖初始化、提交、分支、远程同步与历史管理,适合开发者入门。Use when 需要代码生成、编程辅助、调试测试、开发部署时使用。不适用于无明确技术栈的模糊需求。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

1 installs