ShopTRAINING/feature_branch_workflow.md

101 lines
3.4 KiB
Markdown
Raw Normal View History

2025-07-15 11:25:20 +08:00
# 功能分支开发与合并标准流程
本文档旨在说明一个标准、安全的功能开发流程,涵盖从创建分支到最终合并的完整步骤。
## 流程概述
1. **创建功能分支**:基于主开发分支(如 `lyf-dev`)在远程仓库创建一个新的功能分支(如 `lyf-dev-req0001`)。
2. **同步到本地**:将远程的新分支同步到本地,并切换到该分支进行开发。
3. **开发与提交**:在功能分支上进行代码开发,并频繁提交改动。
4. **推送到远程**:定期将本地的提交推送到远程功能分支,用于备份和协作。
5. **合并回主分支**:当功能开发和测试完成后,将功能分支合并回主开发分支。
---
## 详细操作步骤
### 第一步:同步并切换到功能分支
当远程仓库已经创建了新的功能分支后(例如 `lyf-dev-req0001`),本地需要执行以下命令来同步和切换。
1. **获取远程最新信息**
```bash
git fetch
```
这个命令会拉取远程仓库的所有最新信息,包括新建的分支。
2. **创建并切换到本地分支**
```bash
git checkout lyf-dev-req0001
```
Git 会自动检测到远程存在一个同名分支,并为您创建一个本地分支来跟踪它。
### 第二步:在功能分支上开发和提交
现在您可以在 `lyf-dev-req0001` 分支上安全地进行开发。
1. **进行代码修改**:添加、修改或删除文件以实现新功能。
2. **提交代码改动**
```bash
# 添加所有修改过的文件到暂存区
git add .
# 提交改动到本地仓库,并附上有意义的说明
git commit -m "feat: 完成用户认证模块"
```
> **最佳实践**:保持提交的粒度小且描述清晰,方便代码审查和问题回溯。
### 第三步:推送功能分支到远程
为了备份代码和进行团队协作,需要将本地的提交推送到远程仓库。
```bash
# 将当前分支 (lyf-dev-req0001) 的提交推送到远程同名分支
git push origin lyf-dev-req0001
```
### 第四步:合并功能到主开发分支 (`lyf-dev`)
当功能开发完毕并通过测试后,就可以准备将其合并回 `lyf-dev` 分支。
1. **切换到主开发分支**
```bash
git checkout lyf-dev
```
2. **确保主开发分支是最新版本**
在合并前,务必先拉取远程 `lyf-dev` 的最新代码,以减少冲突的可能性。
```bash
git pull origin lyf-dev
```
3. **合并功能分支**
`lyf-dev-req0001` 的所有改动合并到当前的 `lyf-dev` 分支。
```bash
git merge lyf-dev-req0001
```
* **如果出现冲突 (Conflict)**Git 会提示您哪些文件存在冲突。您需要手动打开这些文件,解决冲突部分,然后再次执行 `git add .``git commit` 来完成合并提交。
* **如果没有冲突**Git 会自动创建一个合并提交。
4. **将合并后的主分支推送到远程**
```bash
git push origin lyf-dev
```
### 第五步:清理(可选)
当功能分支确认不再需要后,可以删除它以保持仓库整洁。
1. **删除远程分支**
```bash
git push origin --delete lyf-dev-req0001
```
2. **删除本地分支**
```bash
git branch -d lyf-dev-req0001
```
---
遵循以上流程可以确保您的开发工作流程清晰、安全且高效。