# Git 分支策略 ## 分支结构 ### 主要分支 #### main - **用途**: 生产就绪的稳定代码 - **保护**: 不允许直接推送,只能通过PR合并 - **特点**: 始终保持可部署状态 #### develop - **用途**: 开发集成分支,所有功能分支的合并目标 - **更新频率**: 持续集成新功能 - **特点**: 最新的开发进度,但可能不稳定 ### 功能分支 #### feature/ui-redesign - **用途**: 界面重设计相关开发 - **基于**: develop分支 - **包含**: - 主界面布局重构 - 设备卡片组件开发 - 样式主题系统 #### feature/database-enhancement - **用途**: 数据库优化和功能增强 - **基于**: develop分支 - **包含**: - 数据库连接管理改进 - 新表结构实现 - 数据模型优化 #### feature/component-system - **用途**: 可复用组件系统开发 - **基于**: develop分支 - **包含**: - DeviceCard组件 - StatusPanel组件 - MapViewer组件 ### 支持分支 #### hotfix/critical-fix - **用途**: 紧急修复生产问题 - **基于**: main分支 - **合并到**: main 和 develop #### release/v2.0.0 - **用途**: 版本发布准备 - **基于**: develop分支 - **包含**: bug修复、文档更新、版本号调整 ## 分支命名规范 ### 功能分支 ``` feature/<功能描述> feature/ui-redesign feature/database-enhancement feature/device-card-component ``` ### 修复分支 ``` bugfix/<问题描述> bugfix/connection-timeout bugfix/ui-layout-issue ``` ### 热修复分支 ``` hotfix/<紧急问题> hotfix/database-crash hotfix/security-vulnerability ``` ### 发布分支 ``` release/<版本号> release/v2.0.0 release/v2.0.1 ``` ## 工作流程 ### 1. 功能开发流程 ```bash # 1. 从develop创建功能分支 git checkout develop git pull origin develop git checkout -b feature/ui-redesign # 2. 开发过程中定期提交 git add . git commit -m "feat: 实现设备卡片基础布局" git commit -m "feat: 添加设备状态指示器" git commit -m "style: 应用新的颜色主题" # 3. 推送到远程分支 git push origin feature/ui-redesign # 4. 创建Pull Request # 通过GitHub/GitLab界面创建PR # 目标分支: develop # 描述: 详细的功能说明和测试结果 ``` ### 2. 代码审查流程 #### PR模板 ```markdown ## 功能描述 简要描述此PR实现的功能 ## 变更内容 - [ ] UI界面重设计 - [ ] 数据库结构优化 - [ ] 新增组件开发 - [ ] 性能优化 - [ ] Bug修复 ## 测试清单 - [ ] 单元测试通过 - [ ] 集成测试通过 - [ ] 手动功能测试 - [ ] 性能测试 - [ ] 兼容性测试 ## 截图/演示 (如果有UI变更,请提供截图或GIF演示) ## 相关Issues Closes #123, Relates to #456 ``` ### 3. 集成流程 ```bash # 1. 功能完成后合并到develop git checkout develop git pull origin develop git merge feature/ui-redesign git push origin develop # 2. 删除已合并的功能分支 git branch -d feature/ui-redesign git push origin --delete feature/ui-redesign ``` ### 4. 发布流程 ```bash # 1. 从develop创建发布分支 git checkout develop git pull origin develop git checkout -b release/v2.0.0 # 2. 版本准备工作 # 更新版本号 # 更新CHANGELOG.md # 最后的bug修复 # 3. 合并到main和develop git checkout main git merge release/v2.0.0 git tag v2.0.0 git push origin main --tags git checkout develop git merge release/v2.0.0 git push origin develop # 4. 删除发布分支 git branch -d release/v2.0.0 ``` ## 提交信息规范 ### 提交类型 - **feat**: 新功能 - **fix**: 修复bug - **docs**: 文档更新 - **style**: 代码格式调整(不影响功能) - **refactor**: 重构代码 - **test**: 测试相关 - **chore**: 构建过程或辅助工具的变动 ### 提交格式 ``` ():