diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..b80242c --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,84 @@ +# 贡献指南 + +## 分支管理策略 + +### 主要分支 + +- **master**: 生产环境分支,包含稳定的发布版本 +- **develop**: 开发分支,用于日常开发和功能集成 + +### 功能开发流程 + +1. **创建功能分支** + ```bash + git checkout develop + git pull origin develop + git checkout -b feature/功能名称 + ``` + +2. **开发和提交** + ```bash + git add . + git commit -m "描述性的提交信息" + ``` + +3. **推送功能分支** + ```bash + git push origin feature/功能名称 + ``` + +4. **合并到 develop** + ```bash + git checkout develop + git merge feature/功能名称 + git push origin develop + ``` + +5. **删除功能分支** + ```bash + git branch -d feature/功能名称 + git push origin --delete feature/功能名称 + ``` + +### 提交信息规范 + +使用清晰的中文提交信息: + +- `feat: 添加新功能` +- `fix: 修复bug` +- `docs: 更新文档` +- `style: 代码格式调整` +- `refactor: 代码重构` +- `test: 添加测试` +- `chore: 构建工具或辅助工具的变动` + +### 示例 + +```bash +git commit -m "feat: 实现交易列表组件 + +- 添加 TransactionCard 组件 +- 实现无限滚动功能 +- 添加空状态显示" +``` + +## 代码规范 + +- 使用 TypeScript 进行类型检查 +- 遵循 ESLint 和 Prettier 配置 +- 组件名使用 PascalCase +- 文件名使用 kebab-case +- 变量和函数名使用 camelCase + +## 测试要求 + +- 新功能必须包含单元测试 +- 修复 bug 时需要添加回归测试 +- 确保所有测试通过后再提交 + +## 发布流程 + +1. 从 develop 创建 release 分支 +2. 在 release 分支进行版本号更新和最终测试 +3. 合并到 master 并打标签 +4. 合并回 develop \ No newline at end of file