用途:该技能覆盖 Gitflow 分支模型,用于统一团队的分支、合并、版本与发布约定,涉及两条长期分支、三类支持分支、提交信息规范、语义化版本以及发布与热修复流程。
主要能力:main(或 master)只放生产就绪代码,只接受 hotfix/* 或 release/* 的合并,每次合并后打版本标签;develop 是集成分支,是所有 feature/* 的来源,只能通过 pull request 合入。feature/* 从 develop 分出并合回 develop,命名为 feature/[issue-id]-descriptive-name,合并后删除;release/* 从 develop 分出、合回 main 与 develop,命名为 release/vX.Y.Z,只做缺陷修复、文档和发布相关任务,不加新功能;hotfix/* 从 main 分出、合回 main 与 develop,命名为 hotfix/vX.Y.Z,仅用于紧急生产修复。
提交与版本:提交信息采用 Conventional Commits 格式 type(scope): description,类型包括 feat、fix、docs、style、refactor、test、chore。语义化版本 MAJOR.MINOR.PATCH 分别对应不兼容变更、向后兼容的新功能、向后兼容的缺陷修复。
必要用法示例:同步 develop 执行 git checkout develop && git pull origin develop;创建功能分支执行 git checkout -b feature/123-user-authentication;PR 前执行 git fetch origin && git rebase origin/develop;打标签执行 git tag -a v1.2.0 -m "Release 1.2.0";删除分支执行 git branch -d feature/123-user-authentication && git push origin --delete feature/123-user-authentication。
规则与限制:所有变更须走 PR,至少一名审批且 CI 通过,保护分支不得直接提交,合并前分支须与目标保持最新,合并后删除本地与远端分支;main 和 develop 的分支保护包括必需评审与状态检查、包含管理员、禁止强推和禁止删除分支。发布流程为从 develop 建 release 分支、更新版本号、修复发布问题、向 main 开 PR,合并后打标签并把 main 合回 develop。热修复流程为从 main 建 hotfix 分支、最小改动修复、递增补丁版本、向 main 开 PR,合并后打标签并合回 develop。其他细节暂未提供。