BMAD-METHOD/docs/how-to-contribute-with-pull...

159 lines
4.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 如何通过Pull Request贡献
**刚接触GitHub和pull request** 本指南将逐步引导您了解基础知识。
## 什么是Pull Request
Pull request (PR) 是您在GitHub上向项目提议更改的方式。可以把它想象成说“这是我想要做的一些更改——请审查并考虑将它们添加到主项目中。”
## 开始之前
⚠️ **重要提示**:请保持您的贡献小而专注!我们更喜欢许多小的、清晰的更改,而不是一个巨大的更改。
**提交PR前需要**
- **对于错误修复**:使用[错误报告模板](https://github.com/bmadcode/bmad-method/issues/new?template=bug_report.md)创建一个issue
- **对于新功能**
1. 在Discord的[#general-dev频道](https://discord.gg/gk8jAdXWmj)中讨论
2. 使用[功能请求模板](https://github.com/bmadcode/bmad-method/issues/new?template=feature_request.md)创建一个issue
- **对于大的更改**始终先开一个issue来讨论对齐
## 分步指南
### 1. Fork存储库
1. 转到[BMad-Method存储库](https://github.com/bmadcode/bmad-method)
2. 点击右上角的“Fork”按钮
3. 这会创建您自己的项目副本
### 2. 克隆您的Fork
```bash
# 将YOUR-USERNAME替换为您的实际GitHub用户名
git clone https://github.com/YOUR-USERNAME/bmad-method.git
cd bmad-method
```
### 3. 创建一个新分支
**切勿直接在`main`分支上工作!** 始终为您的更改创建一个新分支:
```bash
# 创建并切换到一个新分支
git checkout -b fix/typo-in-readme
# 或
git checkout -b feature/add-new-agent
```
**分支命名技巧:**
- `fix/description` - 用于错误修复
- `feature/description` - 用于新功能
- `docs/description` - 用于文档更改
### 4. 进行更改
- 编辑您想要更改的文件
- 保持更改小而专注
- 如果可能,测试您的更改
### 5. 提交您的更改
```bash
# 添加您的更改
git add .
# 用清晰的消息提交
git commit -m "Fix typo in README.md"
```
**好的提交消息:**
- “修复安装说明中的拼写错误”
- “为新代理用法添加示例”
- “更新文档中的损坏链接”
**不好的提交消息:**
- “东西”
- “更改”
- “更新”
### 6. 推送到您的Fork
```bash
# 将您的分支推送到您的fork
git push origin fix/typo-in-readme
```
### 7. 创建Pull Request
1. 在GitHub上转到您的fork
2. 您会看到一个绿色的“Compare & pull request”按钮 - 点击它
3. 选择正确的目标分支:
- **`next`分支**用于大多数贡献(功能、文档、增强)
- **`main`分支**仅用于关键修复
4. 使用CONTRIBUTING.md中的模板填写PR描述
- **什么**1-2句话描述更改了什么
- **为什么**1-2句话解释原因
- **如何**2-3个要点说明实现方式
- **测试**:您如何测试
5. 引用相关的issue编号例如“Fixes #123”)
### 8. 等待审查
- 维护人员将审查您的PR
- 他们可能会要求更改
- 请耐心并对反馈做出回应
## 什么是好的Pull Request
**好的PR**
- 一次只更改一件事
- 有清晰、描述性的标题
- 在描述中解释了什么和为什么
- 仅包含需要更改的文件
**避免:**
- 更改整个文件的格式
- 在一个PR中进行多个不相关的更改
- 将您的整个项目/存储库复制到PR中
- 没有解释的更改
## 要避免的常见错误
1. **不要重新格式化整个文件** - 只更改必要的内容
2. **不要包含不相关的更改** - 每个PR只专注于一个修复/功能
3. **不要在issue中粘贴代码** - 创建一个合适的PR
4. **不要提交您的整个项目** - 贡献具体的改进
## 需要帮助?
- 💬 加入我们的[Discord社区](https://discord.gg/gk8jAdXWmj)以获得实时帮助:
- **#general-dev** - 技术问题和功能讨论
- **#bugs-issues** - 在提交issue前获得有关错误的帮助
- 💬 在[GitHub Discussions](https://github.com/bmadcode/bmad-method/discussions)中提问
- 🐛 使用[错误报告模板](https://github.com/bmadcode/bmad-method/issues/new?template=bug_report.md)报告错误
- 💡 使用[功能请求模板](https://github.com/bmadcode/bmad-method/issues/new?template=feature_request.md)建议功能
- 📖 阅读完整的[贡献指南](../CONTRIBUTING.md)
## 示例好的PR vs 坏的PR
### 😀 好的PR示例
**标题**:“修复安装指南的损坏链接”
**更改**:一个文件,一行更改
**描述**“README.md中的链接指向了错误的文件。已更新为指向正确的安装指南。”
### 😞 坏的PR示例
**标题**:“更新”
**更改**50个文件整个代码库重新格式化
**描述**:“做了一些改进”
---
**请记住**:我们随时为您提供帮助!不要害怕提问。每个专家都曾经是初学者。