Agent Skills
返回列表
iOS 代码比对变更

iOS 代码比对变更

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_9a66f56b/git-diff。

技能介绍

要解决什么问题

版本发布或 PR 评审时,你往往需要的是「从 tag A 到 tag B」的净差异,而不是分别打开两个 commit 各自改了什么。对 iOS 工程来说,还要把 Swift/Objective-C 类、XIB/Storyboard、.plist 以及 .xcassets 里的图库变动拆开看;若把 Pods/、build/ 里的 diff 一并统计,结论会被第三方依赖噪声淹没。

技能如何工作

技能在本地 git 仓库上,以起点 + 终点(commit hash 或 tag)计算 git diff 的净变化,并做分层过滤与归类:

  • 排除第三方目录:忽略 Pods/、build/、.build/ 下的文件,只分析业务代码。
  • 类文件:.swift;混编时还包括 .h / .m / .mm,输出带扩展名的文件名(含可能的 Bridging Header)。
  • UI 与配置:.xib、.storyboard、.plist、.html。
  • 图片资源:按 imageset / appiconset 维度聚合多尺寸资源,跳过各类 Contents.json。

每个分类按 Git 语义标注 A/D/M/R(新增、删除、修改、重命名),并在分类末尾给出净变化汇总(例如类文件 -3 +14)。

边界与注意点

  • 大仓库:务必先排除 Pods/build,否则 diff 体积与误读风险都会上升。
  • 重命名:Git 有时会把重命名呈现为「删除 + 新增」,需结合路径相似性自行判断是否为 R。
  • 同名不同路径:删除旧路径再在新路径新增同名文件,应计为删除与新增,不算修改。
  • 适用栈:Xcode 工程,Swift / Objective-C / 混编;依赖管理常见为 CocoaPods 或 SPM(分析对象仍是项目自身代码,而非 Pod 源码树)。

使用场景

  • 发版前给定起点与终点 tag,需要生成仅含业务代码的类、UI 与图库净变更清单
  • PR 评审时要对照两个 commit 区间,排除 Pods/build 后核对 Swift/OC 类文件改动范围
  • 口头描述「从 commit A 到 B 改了什么」,需要按 A/D/M/R 分类并附各类净变化汇总
  • 混编 Xcode 工程需同时统计 .swift 与 .h/.m/.mm,并按 imageset 维度合并图片变动

适合人员

  • 负责 iOS 版本说明撰写、需按 tag 区间整理类与资源变动摘要的发布协调同学
  • 维护 CocoaPods 混编仓库、PR 评审时要快速剥离第三方目录只看业务 diff 的 iOS 工程师
  • 带 QA 做回归范围评估、需要把 xib/storyboard/plist 与图库变更单独列出的移动端测试负责人
  • 接手他人分支后核对「上一版到当前 HEAD」净差异、避免误读 Pods 大规模更新的技术负责人