116 lines
2.4 KiB
Markdown
116 lines
2.4 KiB
Markdown
# 微信小程序多人协作分支管理规范
|
||
|
||
## 一、分支结构
|
||
|
||
```
|
||
main (主分支/生产环境)
|
||
└── test (测试分支)
|
||
└── feature/xxx (个人开发分支)
|
||
```
|
||
|
||
| 分支 | 用途 | 稳定性 |
|
||
|------|------|--------|
|
||
| main | 生产环境代码 | 最高,仅接受测试通过的代码合并 |
|
||
| test | 测试环境,用于体验版发布 | 中,需验证后合并到 main |
|
||
| feature/xxx | 个人开发分支 | 低,按需命名,如 `feature/user-center` |
|
||
|
||
---
|
||
|
||
## 二、开发流程
|
||
|
||
### 1. 开始开发
|
||
|
||
```bash
|
||
# 确保本地 main 最新
|
||
git checkout main
|
||
git pull origin main
|
||
|
||
# 从 main 创建自己的开发分支
|
||
git checkout -b feature/your-name-work
|
||
```
|
||
|
||
### 2. 开发阶段
|
||
|
||
- 在个人分支上开发功能
|
||
- 频繁提交,保持原子性提交
|
||
- 定期 `git pull origin main` 同步主线变更,避免合并冲突累积
|
||
|
||
```bash
|
||
git add .
|
||
git commit -m "feat: 完成xxx功能"
|
||
```
|
||
|
||
### 3. 合并到 test 分支
|
||
|
||
```bash
|
||
# 切换到 test
|
||
git checkout test
|
||
git pull origin test
|
||
|
||
# 合并个人分支
|
||
git merge feature/your-name-work
|
||
|
||
# 推送 test 分支
|
||
git push origin test
|
||
```
|
||
|
||
### 4. 打包上传体验版
|
||
|
||
```bash
|
||
# 执行打包
|
||
npm run build
|
||
```
|
||
|
||
打包完成后:
|
||
|
||
1. 打开 **微信开发者工具**
|
||
2. 导入项目,选择 `dist/build/mp-weixin` 目录
|
||
3. 在开发者工具中点击 **上传**
|
||
4. 登录 [微信公众平台](https://mp.weixin.qq.com)
|
||
5. 进入 **管理->版本管理**
|
||
6. 找到刚上传的版本,点击 **选为体验版**
|
||
|
||
---
|
||
|
||
## 三、合并到 main 分支
|
||
|
||
当 test 分支验证通过后,将其合并到 main:
|
||
|
||
```bash
|
||
git checkout main
|
||
git pull origin main
|
||
|
||
git merge origin/test
|
||
|
||
git push origin main
|
||
```
|
||
|
||
---
|
||
|
||
## 四、冲突处理
|
||
|
||
合并时如有冲突,在个人分支解决后再合并:
|
||
|
||
```bash
|
||
git checkout feature/your-name-work
|
||
git merge main
|
||
# 解决冲突后
|
||
git add .
|
||
git commit -m "merge: 解决与main的冲突"
|
||
git push origin feature/your-name-work
|
||
|
||
# 重新合并到 test
|
||
git checkout test
|
||
git merge feature/your-name-work
|
||
git push origin test
|
||
```
|
||
|
||
---
|
||
|
||
## 五、注意事项
|
||
|
||
1. **禁止直接向 main 和 test 分支提交代码**,必须通过合并
|
||
2. **每次合并前先拉取最新代码**,避免覆盖他人改动
|
||
3. **体验版发布前确认代码已提交**,避免遗漏
|
||
4. **开发分支命名建议**:`feature/姓名-功能名`,如 `feature/zhangsan-login`
|
||
5. **删除已合并的开发分支**:`git branch -d feature/your-name-work` |