--- description: Gitflow 工作流规则 globs: alwaysApply: false --- # Gitflow 工作流规则 ## 主分支 ### main(或master) - 包含生产就绪代码 - 永远不要直接提交到main分支 - 只接受来自以下分支的合并: - hotfix/* 分支 - release/* 分支 - 每次合并后必须使用版本号标记 ### develop - 主开发分支 - 包含最新交付的开发变更 - 功能分支的源分支 - 永远不要直接提交到develop分支 ## 支持分支 ### feature/* - 从develop分支创建 - 合并回:develop - 命名约定:feature/[issue-id]-描述性名称 - 示例:feature/123-user-authentication - 创建PR前必须与develop分支保持同步 - 合并后删除 ### release/* - 从develop分支创建 - 合并回: - main - develop - 命名约定:release/vX.Y.Z - 示例:release/v1.2.0 - 仅进行bug修复、文档编写及与发布相关的任务 - 不添加新功能 - 合并后删除 ### hotfix/* - 从main分支创建 - 合并回: - main - develop - 命名约定:hotfix/vX.Y.Z - 示例:hotfix/v1.2.1 - 仅用于紧急生产环境修复 - 合并后删除 ## 提交信息 - 格式:`type(scope): description` - 类型: - feat: 新功能 - fix: Bug修复 - docs: 文档变更 - style: 格式调整、缺失分号等 - refactor: 代码重构 - test: 添加测试 - chore: 维护任务 ## 版本控制 ### 语义化版本 - MAJOR版本用于不兼容的API变更 - MINOR版本用于向后兼容的功能性变更 - PATCH版本用于向后兼容的bug修复 ## Pull Request规则 1. 所有变更必须通过Pull Request进行 2. 所需批准:至少1个 3. CI检查必须通过 4. 不允许直接提交到受保护分支(main, develop) 5. 合并前分支必须保持最新 6. 合并后删除分支 ## 分支保护规则 ### main和develop - 要求Pull Request审核 - 要求状态检查通过 - 要求分支保持最新 - 限制规则包括管理员 - 禁止强制推送 - 禁止删除 ## 发布流程 1. 从develop创建release分支 2. 更新版本号 3. 修复任何与发布相关的问题 4. 创建PR到main 5. 合并到main后: - 标记发布 - 合并回develop - 删除release分支 ## 热修复流程 1. 从main创建hotfix分支 2. 修复问题 3. 更新patch版本号 4. 创建PR到main 5. 合并到main后: - 标记发布 - 合并回develop - 删除hotfix分支