docs: 更新项目文档,完善需求和技术细节
This commit is contained in:
171
docs/CONTRIBUTING.md
Normal file
171
docs/CONTRIBUTING.md
Normal file
@@ -0,0 +1,171 @@
|
||||
# 贡献指南
|
||||
|
||||
欢迎参与爱鉴花项目的开发!本文档将指导您如何为项目做出贡献。
|
||||
|
||||
## 🎯 开发流程
|
||||
|
||||
### 1. 环境准备
|
||||
- 确保已安装 Node.js 16.0.0+
|
||||
- 安装 Git 版本控制工具
|
||||
- 配置开发工具(HBuilderX、VSCode等)
|
||||
|
||||
### 2. 获取代码
|
||||
```bash
|
||||
git clone https://github.com/your-username/aijianhua.git
|
||||
cd aijianhua
|
||||
```
|
||||
|
||||
### 3. 分支管理
|
||||
我们使用 Git Flow 工作流:
|
||||
- `main` - 主分支,用于生产环境
|
||||
- `develop` - 开发分支,集成所有功能
|
||||
- `feature/*` - 功能开发分支
|
||||
- `bugfix/*` - bug修复分支
|
||||
- `release/*` - 发布分支
|
||||
|
||||
### 4. 开发步骤
|
||||
1. 从 `develop` 分支创建功能分支
|
||||
2. 在分支上开发新功能或修复bug
|
||||
3. 提交代码并推送到远程仓库
|
||||
4. 创建 Pull Request 到 `develop` 分支
|
||||
5. 代码审查通过后合并
|
||||
|
||||
## 📝 代码规范
|
||||
|
||||
### JavaScript/TypeScript
|
||||
- 使用 ESLint + Prettier 进行代码格式化
|
||||
- 遵循 Airbnb JavaScript 风格指南
|
||||
- 使用 async/await 代替回调函数
|
||||
- 添加必要的注释和文档
|
||||
|
||||
### Vue/uni-app
|
||||
- 使用 Composition API
|
||||
- 组件命名使用 PascalCase
|
||||
- Props 定义使用 TypeScript 类型
|
||||
- 使用 Vue Router 进行路由管理
|
||||
|
||||
### Node.js
|
||||
- 使用 Express.js 框架
|
||||
- 中间件使用统一的错误处理
|
||||
- API 响应格式标准化
|
||||
- 使用 Winston 进行日志记录
|
||||
|
||||
## 🔧 提交规范
|
||||
|
||||
### Commit Message 格式
|
||||
```
|
||||
<type>(<scope>): <subject>
|
||||
|
||||
<body>
|
||||
|
||||
<footer>
|
||||
```
|
||||
|
||||
### Type 类型
|
||||
- `feat`: 新功能
|
||||
- `fix`: bug修复
|
||||
- `docs`: 文档更新
|
||||
- `style`: 代码格式调整
|
||||
- `refactor`: 代码重构
|
||||
- `test`: 测试相关
|
||||
- `chore`: 构建过程或辅助工具变动
|
||||
|
||||
### 示例
|
||||
```
|
||||
feat(user): 添加用户注册功能
|
||||
|
||||
- 实现用户注册API接口
|
||||
- 添加手机号验证功能
|
||||
- 完善错误处理机制
|
||||
|
||||
Closes #123
|
||||
```
|
||||
|
||||
## 🧪 测试要求
|
||||
|
||||
### 单元测试
|
||||
- 后端API接口需要编写单元测试
|
||||
- 测试覆盖率要求达到80%以上
|
||||
- 使用 Jest 测试框架
|
||||
|
||||
### 集成测试
|
||||
- 主要业务流程需要集成测试
|
||||
- 测试数据库操作和API调用
|
||||
- 模拟各种边界情况
|
||||
|
||||
### E2E测试
|
||||
- 关键用户流程需要端到端测试
|
||||
- 使用 Cypress 或 Puppeteer
|
||||
- 覆盖主要业务场景
|
||||
|
||||
## 📖 文档要求
|
||||
|
||||
### 代码注释
|
||||
- 公共方法和复杂逻辑需要添加注释
|
||||
- 使用 JSDoc 格式注释
|
||||
- 注释说明参数、返回值、异常情况
|
||||
|
||||
### API文档
|
||||
- 使用 Swagger/OpenAPI 规范
|
||||
- 文档需要与代码同步更新
|
||||
- 包含请求示例和响应示例
|
||||
|
||||
### 项目文档
|
||||
- README 文件需要保持最新
|
||||
- 添加必要的配置说明
|
||||
- 更新部署和运维指南
|
||||
|
||||
## 🐛 Issue 报告
|
||||
|
||||
### Bug报告格式
|
||||
```
|
||||
## 问题描述
|
||||
清晰描述遇到的问题
|
||||
|
||||
## 重现步骤
|
||||
1. 第一步
|
||||
2. 第二步
|
||||
3. 第三步
|
||||
|
||||
## 预期行为
|
||||
期望的正常表现
|
||||
|
||||
## 实际行为
|
||||
实际发生的异常表现
|
||||
|
||||
## 环境信息
|
||||
- 操作系统:
|
||||
- 浏览器:
|
||||
- 版本:
|
||||
```
|
||||
|
||||
### 功能请求格式
|
||||
```
|
||||
## 功能描述
|
||||
详细描述请求的功能
|
||||
|
||||
## 使用场景
|
||||
在什么情况下需要这个功能
|
||||
|
||||
## 解决方案建议
|
||||
如果有的话,提供实现建议
|
||||
|
||||
## 附加信息
|
||||
任何其他相关信息
|
||||
```
|
||||
|
||||
## 🤝 行为准则
|
||||
|
||||
- 尊重其他贡献者
|
||||
- 建设性的代码审查
|
||||
- 及时响应问题和请求
|
||||
- 遵守开源协议
|
||||
|
||||
## 📞 联系方式
|
||||
|
||||
如有问题可以通过以下方式联系:
|
||||
- GitHub Issues
|
||||
- 项目邮箱: aijianhua@example.com
|
||||
- 开发者微信群
|
||||
|
||||
感谢您的贡献!🎉
|
||||
Reference in New Issue
Block a user