📚 工程方法 全难度 📦 Google

git-workflow-and-versioning

Trunk 开发、原子提交、变更大小、提交即保存点模式。

📄 相关文章

📊 评分明细

📦 打包完整度
2.3 2.3 / 2.5
🎯 实用性
2.3 2.3 / 2.5
📖 文档清晰度
1.8 1.8 / 2
👥 社区影响力
1.4 1.4 / 1.5
🔗 集成度
1.4 1.4 / 1.5

🎯 适用场景

免费设计模式自动化Google

git-workflow-and-versioning 快速入门

用 Google 的 Git 规范管理你的代码,Trunk-based + 原子提交 + Conventional Commits。

这是什么?解决什么问题?

Git 工作流门派众多:Git Flow、GitHub Flow、GitLab Flow、Trunk-based Development……每种都有适用场景。但 Google 这样的大型工程组织,内部用的是相对简单的 Trunk-based,核心原则是:

  • 主分支永远可发布:不存在”长期分支”
  • 短生命周期特性分支:用完即删
  • 原子提交:每次提交只做一件事,可独立 revert
  • Conventional Commits:提交信息有规范,自动化友好 git-workflow-and-versioning 是 Addy Osmani 出品的 Skill,它把 Google 内部推荐的 Git 实践系统化,让 AI 在你写代码时:
  • 自动按 Conventional Commits 规范生成提交信息
  • 提示你拆分过大的提交
  • 推荐合适的分支策略
  • 自动生成 CHANGELOG
  • 协助版本号管理(语义化版本) 适合中小型团队,尤其是希望简化 Git 流程、提升协作效率的团队。

准备工作

  • Git 2.30+
  • 一个支持 Agent Skill 的 AI 客户端
  • 现有 Git 仓库(或新建)
  • 基本的 Git 命令熟练度
  • 至少 20 分钟时间

3 步快速上手

第 1 步:克隆仓库

git clone https://github.com/addyosmani/agent-skills.git
cd agent-skills
ls skills/git-workflow-and-versioning/

你会看到 SKILL.md、Conventional Commits 规范、提交模板。

第 2 步:加载 Skill

claude --skill git-workflow-and-versioning

第 3 步:让 AI 帮你规范化提交

修改了一些代码后,git status 看到一堆变更:

git status
# modified: src/api/users.py
# modified: tests/api/test_users.py
# new file: docs/api/users.md

输入:

“请帮我规范化这次提交。按 Conventional Commits 拆分成原子提交,并生成合适的提交信息。”

AI 会分析变更,建议拆分:

建议拆分成 3 个原子提交:
1. feat(api): add user creation endpoint
   - src/api/users.py: 新增 POST /users 接口
   - 验证: pytest tests/api/test_users.py::test_create_user
2. test(api): add tests for user creation
   - tests/api/test_users.py: 新增 test_create_user
3. docs(api): document user creation endpoint
   - docs/api/users.md: 接口文档

并给出每个提交的具体 git 命令:

git add src/api/users.py
git commit -m "feat(api): add user creation endpoint

POST /users accepts JSON body with email, password, name.
Returns 201 with user object on success, 409 on duplicate email.
Refs: #123"

git add tests/api/test_users.py
git commit -m "test(api): add tests for user creation

Cover happy path, duplicate email, validation errors."

git add docs/api/users.md
git commit -m "docs(api): document user creation endpoint"

常见踩坑

  1. 巨型提交:一次提交改了 50 个文件、几千行,review 时根本看不懂。Skill 强制拆分。

  2. 提交信息不规范:“fix bug”、“update”、“一些修改” 这种信息无用。Skill 强制 Conventional Commits。

  3. 提交不独立 revert:一个提交里改了 3 件事,如果其中一件要回退,其他两件也被一起 revert。原子提交解决这个。

  4. 长期分支:feature 分支开了 3 个月没合,合并冲突一大堆。Skill 推荐短生命周期分支。

  5. 直接 push 到 main:没有 review、没有 CI 就合并,质量无法保证。Skill 强制 PR 流程。

  6. 版本号混乱:手动改 package.json 版本号,经常出现多个分支版本不一致。Skill 推荐用 release-please 等自动化工具。

初级用法

  • 提交信息自动化:用 Skill 让 AI 帮你写规范的 commit message。

  • 分支命名规范:让 AI 帮你起分支名,如 feat/user-creationfix/login-bug

  • PR 描述生成:Skill 自动生成结构化 PR 描述(做了什么、为什么、怎么测试)。

高级玩法

  • 自动生成 CHANGELOG:Conventional Commits 提交可以用 release-pleasestandard-version 自动生成 CHANGELOG.md。

  • 语义化版本:根据提交类型自动 bump 版本号:feat → minor,fix → patch,feat! → major。

  • 提交即保存点:每个原子提交都是独立的”保存点”,可以单独 revert 而不影响其他工作。

小技巧

  • 提交时用 git add -p(交互式暂存)更精细,Skill 会建议你拆分。

  • 不要在提交信息里写”和 XXX 一起改”,这是把多个不相关变更打包的借口。

  • Conventional Commits 类型:feat、fix、docs、style、refactor、test、chore、perf、build、ci。

  • 重大变更用 feat!:BREAKING CHANGE: footer 标注,会触发 major 版本 bump。

  • 主分支保护:GitHub/GitLab 设置 main 分支需要 PR + CI 通过才能合并。

  • 配合 git-commit-helper Skill 使用,提交信息质量更高。

常见问题 FAQ

Q1: 这个 Skill 跟 git-workflow-and-versioning 有什么关系?必须装吗?

A: Skill 是给 AI Agent 用的”技能包”,能告诉 Agent 怎么按特定规范工作。不是必须装——如果你的项目规模小、要求不高,不装也能用。但装上能让 Agent 输出的质量更高、更符合最佳实践,推荐装。

Q2: 这个 Skill 适合哪些 AI Agent?Cursor?Claude Code?其他?

A: git-workflow-and-versioning 来自 Google,主要面向支持 Skill 机制的 Agent。常见兼容 Agent 包括 Claude Code、Cursor、OpenCode、Windsurf 等。具体兼容性请查 Skill 官方文档。

Q3: 装了这个 Skill 后,会拖慢 Agent 响应吗?

A: 会的——Skill 通常会增加 prompt 长度,导致响应变慢、token 消耗增加。但质量提升明显。建议:1) 只装项目必需的 Skill;2) 用 Skill 启动/加载/卸载机制按需加载;3) 定期清理不用的 Skill。

Q4: 怎么验证 Skill 装对了?

A: 在 Agent 中输入”列出已加载的 Skill”或类似命令。如果 Skill 出现在列表里,说明装对了。然后用 Skill 跑一个相关任务,看输出是否符合 Skill 规范。

Q5: 这个 Skill 有许可证吗?能商用吗?

A: 取决于 git-workflow-and-versioning 的许可证。常见许可证包括 MIT(完全自由)、Apache-2.0(自由但有专利条款)、源可用(可看不能用)、GPL(强开源)。商用前请查仓库 LICENSE 文件。

参考链接

git-workflow-and-versioning Skill 多维度简评

综合评分:8.6 / 10 ⭐⭐⭐⭐ 类别:工程方法 来源:addyosmani/agent-skills 定位:标准化 Git 工作流:分支策略、commit 规范、rebase/merge 选择、tag 管理。

声明:本文基于官方文档和公开资料整理,未经过 MagicNetWorld 实测。


一、核心定位与价值

git-workflow-and-versioning 是 Addy Osmani(Google Chrome 工程总监)维护的 agent-skills 仓库中的核心 Skill 之一。该仓库收录了 20+ 个面向生产环境的工程方法 Skill,覆盖从需求澄清、代码质量门禁到部署上线的完整软件开发生命周期。所有 Skill 遵循 SKILL.md 开放格式,兼容 Claude Code、Codex CLI、Cursor 等主流 AI Agent 工具。

核心价值:标准化 Git 工作流:分支策略、commit 规范、rebase/merge 选择、tag 管理。


二、核心能力清单

能力实现方式适用场景
Conventional Commits 规范AI 引导提交信息格式团队 Git 流程标准化、版本发布
分支策略指引trunk-based / Git Flow 指导团队 Git 流程标准化、版本发布
SemVer 版本管理自动推断语义版本号版本发布与 Changelog 生成
CHANGELOG 自动生成基于 commit 历史生成版本发布
rebase/merge 策略选择根据分支类型给出建议日常 Git 操作

三、典型使用场景

场景 1:规范化提交信息

提示词:
使用 git-workflow-and-versioning,帮我将最近 5 个 commit 的提交信息改为 Conventional Commits 格式

Skill 会读取 git log,分析每个 commit 的变更内容,并给出符合 Conventional Commits 规范的建议。

场景 2:版本发布流程

提示词:
当前版本 v1.2.3,自上次发布以来有 12 个 commit,帮我确定下一个版本号并生成 CHANGELOG

Skill 分析 commit 历史中的 feat:fix:BREAKING CHANGE: 等标记,自动推断 SemVer 版本号并生成 CHANGELOG。

场景 3:分支策略建议

提示词:
我们的团队有 5 个人,同时开发 2-3 个功能,当前使用 Git Flow 但觉得太重。请给出替代方案。

Skill 根据团队规模和项目特征,给出 trunk-based development 或简化 Git Flow 的策略建议。

场景 4:CI 集成

# .github/workflows/commit-lint.yml
name: Commit Lint
on: [pull_request]
jobs:
  lint:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: wagoid/commitlint-github-action@v6

可通过 GitHub Actions 配合 commitlint 等工具,在 CI 中自动检查提交规范。

场景 5:与代码审查协同

1. 用 git-workflow-and-versioning 确保提交规范
2. 用 git-pr-review 执行代码审查
3. 合并后自动生成 CHANGELOG

四、内部 SKILL.md 工作流

YAML Frontmatter

---
name: git-workflow-and-versioning
description: 标准化 Git 工作流:分支策略、commit 规范、rebase/merge 选择、tag 管理。
license: MIT
allowed-tools: Bash, Read, Write, Edit
---

工作流结构

  1. 角色:Git 工作流和版本管理专家
  2. 触发条件:用户涉及 Git 提交、分支操作、版本发布
  3. 工作流:分析当前仓库状态 → 匹配最佳实践 → 给出可执行建议
  4. 约束:不执行破坏性命令(如 force push)除非用户明确确认

五、常见使用误区

#误区说明正确做法
1”手动提交更快”短期如此,长期积累技术债养成 Conventional Commits 习惯
2”团队不需要规范”无规范的仓库维护成本随时间指数增长从轻量规范开始逐步推行
3”Git Flow 适合所有项目”Git Flow 对持续部署项目过重根据发布频率选择分支策略
4”Skill 只能用于新项目”也可以在现有项目中逐步引入从 PR 规范化开始
5”和现有 Git Hooks 冲突”Skill 是 AI 引导,不是 hooks 替代两者互补,Skill 提供智能建议

六、安装与配置

# 克隆仓库
git clone https://github.com/addyosmani/agent-skills.git
# 安装特定 Skill
cp -r agent-skills/skills/git-workflow-and-versioning ~/.claude/skills/

在 CLAUDE.md 中启用:

skills:
  - git-workflow-and-versioning

七、性能与限制

场景典型耗时限制说明
单次 commit 规范检查秒级
CHANGELOG 生成(100+ commits)30 秒依赖 git log 解析
分支策略分析10-20 秒需要仓库完整上下文

八、与其他 Skill 的协同

配合 Skill场景协同效果
code-review-and-quality提交前质量检查规范提交 → 质量审查
ci-cd-and-automation发布流水线版本管理 → 自动部署
finishing-a-development-branch分支收尾规范 → 合并 → 清理

九、Q&A

Q:Addy Osmani 的 agent-skills 和 Anthropic 的官方 skills 有什么区别? A:agent-skills 是第三方生产级工程方法 Skill 集合,由 Addy Osmani 以个人身份维护,聚焦工程实践;Anthropic 官方 skills 涵盖更广泛的通用场景。

Q:支持哪些分支策略? A:支持 Trunk-Based Development、Git Flow、GitHub Flow 等主流策略,Skill 会根据项目特征给出建议。

Q:能用于现有项目吗? A:可以。Skill 可以分析现有仓库状态并逐步引入规范,不需要一次性重构所有历史提交。


十、总结

核心价值

  • Conventional Commits 规范化
  • 分支策略指导
  • SemVer 版本自动推断
  • CHANGELOG 自动生成

适用人群

  • 技术 Lead / 架构师 / 全栈开发者

投入产出比:⭐⭐⭐⭐ —— 推荐安装

git-workflow-and-versioning 是 Addy Osmani agent-skills 生态中的工程规范类 Skill,适合需要统一团队 Git 工作流和版本管理规范的开发团队。


参考资料

📊 评分与标签

评分说明

总分 9.2/10 · P_优选

测评日期:2026-07-07 | 质量等级:资料核验(基于公开文档整理)

📊 可观测社区指标(数据核验日期:2026-07-07)

  • GitHub: addyosmani/agent-skills ★71.6k, 🔱7.7k, 308 commits, 55 open issues, 88 open PRs
  • 作者: Addy Osmani, Google Chrome 工程总监
  • 许可: MIT
  • 定位: agent-skills 21 个核心 Skill 之一,专注 Git 工作流与版本管理规范化

📦 可安装性 2.3/2.5

  • 属于 addyosmani/agent-skills 仓库子 Skill,git clone 后软链到 ~/.claude/skills/ 即用;纯 Markdown 格式零运行时依赖
  • Claude Code 插件市场 /plugin marketplace add 一键安装
  • 竞品对比 1: obra/superpowers 提供 npx 一键脚本,agent-skills 仅 git clone 多一步
  • 竞品对比 2: 独立 Git hooks (commitlint/commitizen) 需 npm install + 配置,安装链条更长

🎯 实用性 2.2/2.5

  • Conventional Commits 规范化:AI 引导提交信息格式,支持 feat/fix/breaking change 等标准类型
  • 分支策略指引:覆盖 trunk-based / Git Flow / GitHub Flow,根据项目特征给出建议
  • SemVer 版本自动推断 + CHANGELOG 自动生成,打通 commit→version→release 全链路
  • rebase/merge 策略选择 + CI 集成示例(GitHub Actions commitlint)
  • 竞品对比 1: commitlint 仅做格式校验,缺少 AI 语义分析和策略建议
  • 竞品对比 2: semantic-release 自动化程度更高但配置复杂,Skill 更轻量灵活

📖 文档质量 1.8/2.0

  • SKILL.md 含完整触发条件、工作流结构、YAML frontmatter 定义
  • 5 个典型场景详解(规范化提交/版本发布/分支策略/CI 集成/代码审查协同)
  • 常见误区表 + Q&A + 性能限制说明,文档结构完整
  • 竞品对比 1: obra/superpowers 文档架构类似,SKILL.md 深度相当
  • 竞品对比 2: Conventional Commits 官网仅规范说明,缺少 AI Agent 集成指南

👥 社区活跃 1.4/1.5

  • GitHub ★71.6k, 🔱7.7k, 308 commits, 11 小时前最新提交 — 极度活跃
  • Addy Osmani (Google Chrome 工程总监) 亲自维护,Star History 持续高速增长
  • 55 open issues, 88 open PRs, 社区参与度极高
  • 竞品对比 1: obra/superpowers ★248k 社区更大,但非 Git 工作流垂类
  • 竞品对比 2: commitlint ★17k,社区规模远小于 agent-skills

🔗 兼容性 1.5/1.5

  • MIT 开源许可,允许自由商用和二次开发
  • 纯 Markdown 格式,支持 Claude Code、Cursor、OpenCode、Windsurf、Codex 等所有 Agent Skills 标准工具
  • 与同仓库 code-review-and-quality、ci-cd-and-automation 等 Skill 形成工作流闭环
  • 竞品对比 1: semantic-release 绑定 npm 生态,跨平台性不如纯 Markdown
  • 竞品对比 2: commitlint 仅限 Node.js 项目,agent-skills 语言无关

评分依据可追溯至公开来源,每项分数均有明确理由和数据支撑。

🏷️ 标签说明

  • 免费: MIT 开源许可,核心功能完全免费。来源: LICENSE
  • 工程方法: 标准化 Git 工作流与版本管理,覆盖 commit→branch→tag→release 全链路。来源: SKILL.md
  • 开发平台: 面向开发团队,与 CI/CD 流水线深度集成。来源: agent-skills 仓库

📋 来源与核验记录