我们非常欢迎并感谢您对本项目的贡献!以下是一些参与项目的方式:
- 🐛 如果您发现了 bug,请提交 issue 并详细描述问题
- 💡 如果您有新功能建议,也欢迎提交 issue 讨论
- 📝 提交 issue 时请确保提供足够的信息,包括:
- 问题描述
- 复现步骤
- 期望行为
- 实际行为
- 环境信息
- 🔀 Fork 本仓库
- 🌿 创建您的特性分支 (
git checkout -b feature/AmazingFeature) - ✍️ 提交您的改动 (
git commit -m 'Add some AmazingFeature') - 📤 推送到分支 (
git push origin feature/AmazingFeature) - 🔍 开启一个 Pull Request
在开始开发之前,请确保您的环境满足以下要求:
-
🐍 Python 3.10 或更高版本
# 检查 Python 版本 python --version -
📦 PDM(Python 依赖管理工具)
# 安装 PDM pip install pdm -
🐳 容器运行时(选择一个):
- Docker Desktop(Windows/macOS)
- Podman Desktop(推荐,全平台支持)
# 检查 Docker 版本 docker --version # 或检查 Podman 版本 podman --version
- 📝 VSCode(推荐的代码编辑器)
- 🔧 Git(版本控制工具)
- 🐚 Windows 用户建议安装 Git Bash 或使用 WSL2
本项目使用 make 命令来管理开发环境和服务。根据您的操作系统,请选择对应的初始化方式:
Windows 用户可以选择以下两种方式之一:
- 下载并安装 Make for Windows
- 将 Make 添加到系统环境变量
- 然后可以使用与 Linux/macOS 相同的
make命令
# 初始化开发环境
pdm install -G dev -G local # 等效于 make dev-deps
docker compose up -d mysql redis # 等效于 make infra-up
# 运行程序
docker compose up -d --build # 等效于 make up
docker compose down -v # 等效于 make down
# 清理项目(可以使用 PowerShell 或 Git Bash)
Get-ChildItem -Recurse -Include "__pycache__","*.pyc","*.pyo","*.pyd",".pytest_cache",".coverage*","htmlcov","dist","build",".eggs" | Remove-Item -Recurse -Force使用以下 make 命令:
# 完整初始化(包含安装依赖和启动基础设施)
make install
# 或者分步执行:
make dev-deps # 仅安装开发依赖
make infra-up # 仅启动基础设施(MySQL、Redis)
# 运行程序
make up # 启动所有服务
make down # 停止所有服务
# 其他命令
make build # 重新构建 Docker 镜像
make clean # 清理项目(删除缓存、构建文件等)💡 注意:本项目默认使用
podman作为容器运行时。如果您使用docker,请修改 Makefile 中的DOCKER_EXEC变量或直接使用对应的 docker 命令。
为了保持一致的开发体验,我们建议在 VSCode 中使用以下配置。将以下内容添加到您的 .vscode/settings.json 文件中:
{
"makefile.configureOnOpen": false,
"python.testing.pytestArgs": ["tests"],
"python.testing.unittestEnabled": false,
"python.testing.pytestEnabled": true,
"[python]": {
"editor.codeActionsOnSave": {
"source.fixAll": "explicit",
"source.organizeImports": "explicit"
},
"editor.defaultFormatter": "charliermarsh.ruff"
}
}这些设置将:
- 🔧 使用 ruff 作为默认的 Python 代码格式化工具
- ✨ 在保存时自动修复代码问题和组织导入
- 🧪 启用 pytest 作为测试框架
- 🛠️ 配置测试目录为
tests
请确保安装以下 VSCode 扩展:
- 遵循 PEP 8 Python 代码风格指南
- 添加必要的注释和文档
- 确保代码通过现有测试
- 为新功能添加测试用例
本项目采用 Git Flow 工作流规范进行版本管理:
- 🌳 主分支
main: 生产环境分支,保持稳定develop: 开发环境主分支
- 🌿 功能分支
feature/*: 新功能开发分支bugfix/*: 问题修复分支hotfix/*: 紧急修复分支release/*: 版本发布分支
分支命名规范:
feature/功能名称:如feature/wallet-integrationbugfix/问题描述:如bugfix/transaction-errorhotfix/问题描述:如hotfix/security-patchrelease/版本号:如release/1.2.0
- 📚 完善文档
- 🌍 改进翻译
- 🎨 优化用户界面
- 🔧 优化性能
- 📣 在社区中分享本项目
感谢所有贡献者为这个项目付出的努力!
