贡献指南
概述
感谢您对 DeEarthX-CE 项目的关注和支持!我们欢迎来自社区的贡献,包括代码提交、问题报告、功能建议等。本指南将帮助您了解如何参与项目开发。
开发环境设置
前提条件
在开始贡献之前,请确保您的系统满足以下要求:
- Node.js:v16.0+(推荐使用最新稳定版)
- pnpm:v8.0+(包管理器)
- Rust:最新稳定版(用于 Tauri 构建)
- Git:用于版本控制
克隆仓库
bash
git clone https://github.com/yourusername/DeEarthX-CE.git
cd DeEarthX-CE安装依赖
bash
pnpm install启动开发服务器
bash
# 启动前端开发服务器
pnpm run dev
# 启动后端开发服务器(如果需要)
pnpm run backend:dev代码规范
代码风格
- TypeScript:使用 TypeScript 官方推荐的代码风格
- Vue:遵循 Vue 3 风格指南
- Rust:遵循 Rust 官方代码风格
提交规范
我们使用 Conventional Commits 规范进行提交信息的编写:
<type>(<scope>): <description>
[optional body]
[optional footer(s)]类型:
feat:新功能fix:修复 bugdocs:文档更新style:代码风格调整refactor:代码重构test:测试相关chore:构建、依赖等杂项
开发流程
分支管理
main:主分支,包含稳定版本develop:开发分支,包含最新开发内容feature/xxx:功能分支,用于开发新功能fix/xxx:修复分支,用于修复 bug
开发步骤
- 创建分支:从
develop分支创建新的功能或修复分支 - 开发代码:实现功能或修复 bug
- 运行测试:确保代码通过所有测试
- 提交代码:使用规范的提交信息
- 创建 PR:向
develop分支提交 Pull Request - 代码审查:等待项目维护者的代码审查
- 合并代码:审查通过后,代码将被合并到
develop分支
测试
运行测试
bash
# 运行前端测试
pnpm run test:frontend
# 运行后端测试
pnpm run test:backend
# 运行所有测试
pnpm run test测试规范
- 为新功能编写单元测试
- 为 bug 修复编写回归测试
- 确保测试覆盖主要功能和边缘情况
文档
文档更新
- 更新 API 文档以反映代码变更
- 更新用户文档以反映功能变更
- 确保文档与代码保持同步
文档规范
- 使用 Markdown 格式
- 保持文档结构清晰
- 提供详细的使用示例
问题报告
如果您发现了 bug 或有功能建议,请在 GitHub Issues 页面提交:
- 搜索现有问题:确保问题尚未被报告
- 创建新问题:提供详细的问题描述
- 添加标签:为问题添加适当的标签
- 提供复现步骤:详细说明如何复现 bug
- 提供环境信息:包括操作系统、Node.js 版本等
功能请求
如果您有新功能的想法,请在 GitHub Issues 页面提交功能请求:
- 搜索现有请求:确保功能尚未被请求
- 创建新请求:提供详细的功能描述
- 添加标签:为请求添加
feature标签 - 说明功能价值:解释该功能对用户的价值
- 提供实现建议:如果有实现思路,欢迎分享
代码审查
审查流程
- 接收 PR:项目维护者接收 Pull Request
- 代码审查:审查代码质量、风格和功能
- 提供反馈:提出改进建议
- 修改代码:根据反馈修改代码
- 合并 PR:审查通过后合并代码
审查标准
- 代码质量:代码是否清晰、高效
- 功能完整性:是否实现了所有需求
- 测试覆盖:是否有足够的测试
- 文档更新:是否更新了相关文档
- 兼容性:是否与现有代码兼容
发布流程
版本号规范
我们使用语义化版本号(Semantic Versioning):
MAJOR.MINOR.PATCHMAJOR:不兼容的 API 变更MINOR:向后兼容的功能添加PATCH:向后兼容的 bug 修复
发布步骤
- 更新版本号:在
package.json和相关文件中更新版本号 - 更新 CHANGELOG:记录版本变更内容
- 构建项目:确保项目能够正常构建
- 运行测试:确保所有测试通过
- 创建发布:在 GitHub 上创建新的发布
- 部署:部署到相关平台
行为准则
我们希望所有参与者能够遵循以下行为准则:
- 尊重他人:尊重所有社区成员,无论其背景如何
- 建设性沟通:使用友好、建设性的语言进行沟通
- 包容多样性:欢迎不同背景和观点的贡献者
- 专注于项目:讨论应集中在项目相关的话题上
- 解决冲突:以积极的方式解决冲突
联系方式
如果您有任何问题或需要帮助,可以通过以下方式联系我们:
- GitHub Issues:用于问题报告和功能请求
- Discord:用于实时讨论和社区交流
- Email:用于重要事项的沟通
致谢
感谢所有为 DeEarthX-CE 项目做出贡献的开发者和社区成员!您的贡献是项目成功的关键。