1.7 KiB
1.7 KiB
OES-WEB 开发流程
开发环境搭建
- 克隆仓库
- 运行
npm install - 运行
npm run dev启动开发服务器 - 打开 http://localhost:5173
分支策略
main-- 生产就绪代码develop-- 功能集成分支feature/*-- 单个功能分支fix/*-- Bug 修复分支
分支命名: feature/short-description 或 fix/issue-number-description
提交规范
使用 Conventional Commits:
feat: 添加新敌人类型fix: 修复对角线移动碰撞检测docs: 更新 GDD 新增能力系统refactor: 提取物理计算到独立模块test: 添加存档系统集成测试
代码审查清单
- 所有测试通过 (
npm test) - TypeScript 类型检查通过 (
npx tsc --noEmit) - 没有 console.log 留在生产代码中
- 新功能有对应测试
- 性能: 游戏循环中无不必要对象分配
- 组件有
type字段
文件命名
- 组件: PascalCase (
PlayerEntity.ts) - 工具: camelCase (
collisionDetection.ts) - 资源: kebab-case (
enemy-sprite-sheet.png) - 测试:
*.test.ts或*.spec.ts
测试标准
- 所有游戏逻辑需要单元测试 (物理、技能计算、炼金组合)
- 存档/读档需要集成测试
- 视觉/音频功能需要手动测试
- 合并前运行完整测试套件
开发工作流 (AI 辅助)
功能开发
- 在 GDD 中描述功能
- 创建 feature 分支
- 让 Claude Code 探索代码库并提出方案
- 审批后实现并添加测试
- 审查并迭代
Bug 修复
- 描述症状
- Claude Code 搜索相关代码
- 提出修复方案和根因分析
- 验证后提交
重构
- 陈述目标 ("让碰撞系统更易测试")
- Claude Code 分析当前结构
- 提出方案后再修改
- 审批后执行