mirror of
https://github.com/ctwj/urldb.git
synced 2025-11-25 03:15:04 +08:00
5.1 KiB
5.1 KiB
🤝 贡献指南
感谢您对 L9Pan 项目的关注!我们欢迎所有形式的贡献。
📋 贡献类型
- 🐛 Bug 修复
- ✨ 新功能开发
- 📚 文档改进
- 🎨 UI/UX 优化
- ⚡ 性能优化
- 🧪 测试用例
- 🔧 工具改进
🚀 开始贡献
1. Fork 项目
- 访问 GitHub 仓库
- 点击右上角的 Fork 按钮
- 选择您的 GitHub 账户
2. 克隆您的 Fork
git clone https://github.com/YOUR_USERNAME/resManage.git
cd resManage
3. 添加上游仓库
git remote add upstream https://github.com/ctwj/urldb.git
4. 创建功能分支
git checkout -b feature/your-feature-name
# 或者
git checkout -b fix/your-bug-fix
💻 开发环境设置
后端开发
# 安装 Go 依赖
go mod tidy
# 复制环境变量文件
cp env.example .env
# 编辑环境变量
vim .env
# 启动开发服务器
go run main.go
前端开发
# 进入前端目录
cd web
# 安装依赖
pnpm install
# 启动开发服务器
pnpm dev
数据库设置
CREATE DATABASE url_db;
📝 开发规范
代码风格
Go 代码规范
- 遵循 Go 官方代码规范
- 使用
gofmt格式化代码 - 函数名使用驼峰命名法
- 包名使用小写字母
- 错误处理要明确
TypeScript/JavaScript 规范
- 使用 TypeScript 编写代码
- 遵循 ESLint 规则
- 使用 Prettier 格式化代码
- 组件名使用 PascalCase
- 变量名使用 camelCase
提交信息规范
使用中文描述提交信息,格式如下:
类型(范围): 简短描述
详细描述(可选)
相关Issue: #123```
类型包括:
- `feat`: 新功能
- `fix`: 修复bug
- `docs`: 文档更新
- `style`: 代码格式调整
- `refactor`: 代码重构
- `test`: 测试相关
- `chore`: 构建过程或辅助工具的变动
示例:
feat(资源管理): 添加批量导入功能
- 支持Excel文件导入
- 添加导入进度显示
- 优化错误处理
相关Issue: #45
### 分支命名规范
- `feature/功能名称` - 新功能开发
- `fix/问题描述` - Bug修复
- `docs/文档类型` - 文档更新
- `refactor/重构内容` - 代码重构
- `test/测试内容` - 测试相关
## 🧪 测试
### 后端测试
```bash
# 运行所有测试
go test ./...
# 运行特定包的测试
go test ./handlers
# 运行测试并显示覆盖率
go test -cover ./...
前端测试
cd web
# 运行单元测试
pnpm test
# 运行E2E测试
pnpm test:e2## 📋 Pull Request 流程
###1. 确保代码质量
- ] 代码通过所有测试
- ] 代码符合项目规范
- ] 添加了必要的文档
- ] 更新了相关文档
### 2 提交 Pull Request
1推送您的分支到您的 Fork
```bash
git push origin feature/your-feature-name
- 在 GitHub 上创建 Pull Request3. 填写 PR 模板4 等待代码审查
###3PR 模板
## 📝 描述
简要描述您的更改
## 🎯 类型
- ] Bug 修复
- ] 新功能
- ] 文档更新
- ] 代码重构
- ] 性能优化
- 相关
## 🔗 相关 Issue
关闭 #123
## ✅ 检查清单
- ] 我的代码遵循项目的代码规范
- ] 我已经自测了我的更改
- ] 我已经添加了必要的测试
- ] 我已经更新了相关文档
- ] 我的更改不会产生新的警告
- 我添加了示例来证明我的更改是有效的
## 📸 截图(如果适用)
## 🔧 测试
请描述您如何测试您的更改
## 📋 其他信息
任何其他信息或上下文
🐛 报告 Bug
Bug 报告模板
## 🐛 Bug 描述
清晰简洁地描述 bug
## 🔄 重现步骤
1. 进入...2. 点击 '....3. 滚动到 ....4 看到错误
## ✅ 预期行为
清晰简洁地描述您期望发生的事情
## 📸 截图
如果适用,添加截图以帮助解释您的问题
## 💻 环境信息
- 操作系统: [例如 Windows 10]
- 浏览器: [例如 Chrome, Safari]
- 版本:例如 22]
## 📱 移动设备(如果适用)
- 设备: [例如 iPhone 6]
- 操作系统: 例如 iOS 8.1]
- 浏览器:例如 Safari]
- 版本: [例如 22]
## 🔧 其他上下文
在此处添加有关问题的任何其他上下文
💡 功能请求
功能请求模板
## 💡 功能描述
清晰简洁地描述您想要的功能
## 🎯 问题描述
清晰简洁地描述这个功能要解决的问题
## 💭 建议的解决方案
清晰简洁地描述您希望发生的事情
## 🔄 替代方案
清晰简洁地描述您考虑过的任何替代解决方案或功能
## 📋 其他上下文
在此处添加有关功能请求的任何其他上下文或截图
📞 联系我们
如果您有任何问题或需要帮助,请通过以下方式联系我们:
- 📧 邮箱: 510199617@qq.com
- 💬 讨论区: GitHub Discussions
- 🐛 问题反馈: GitHub Issues
🙏 致谢
感谢所有为 L9项目做出贡献的开发者!
记住:每一个贡献,无论大小,都是宝贵的! 🎉