共建分支流程文档
什么是共建分支?
共建分支是指多个开发者在同一个特性分支上协作开发,通常用于大型功能开发或复杂问题修复,需要多人共同完成。
共建分支工作流程
1. 创建共建分支
# 负责人创建共建分支
git checkout develop
git pull origin develop
git checkout -b feat/shared-feature
# 推送分支到远程
git push -u origin feat/shared-feature
2. 邀请协作者加入
通知团队成员共建分支名称:feat/shared-feature
3. 开发者加入共建分支
# 获取远程分支信息
git fetch origin
# 切换到共建分支
git checkout feat/shared-feature
# 确保分支最新
git pull origin feat/shared-feature
协作开发规范
1. 频繁同步代码
# 每天开始工作前
git pull origin feat/shared-feature
# 开发过程中定期同步
git pull --rebase origin feat/shared-feature
# 推送代码前确保同步
git pull --rebase origin feat/shared-feature
git push origin feat/shared-feature
2. 提交规范
# 小步提交,频繁推送
git add <修改的文件>
git commit -m "feat: 添加用户列表组件 - 张三"
# 使用--author标识贡献者(可选)
git commit -m "feat: 实现搜索功能" --author="李四 <lisi@email.com>"
3. 模块化分工建议
将功能拆分为相对独立的模块,减少冲突:
- 开发者A:负责前端组件开发
- 开发者B:负责后端API开发
- 开发者C:负责数据库设计和测试
冲突预防与解决
1. 预防冲突策略
# 频繁拉取更新
git config --global pull.rebase true
# 在专用区域开发
# 开发者A负责src/components/user/
# 开发者B负责src/api/user/
2. 冲突解决流程
# 当遇到冲突时
git pull --rebase origin feat/shared-feature
# 手动解决冲突文件
# 使用编辑器解决标记为<<<<<<<, =======, >>>>>>>的区域
# 标记冲突已解决
git add <冲突文件>
# 继续rebase
git rebase --continue
# 推送解决后的代码
git push origin feat/shared-feature
代码质量保障
1. 实时沟通机制
- 使用Slack/Teams等即时通讯工具创建频道
- 定期同步进度(每日站会)
- 使用代码注释标注待完成事项
2. 代码审查安排
# 即使在同一分支也要互相审查
# 使用GitHub/GitLab的Review功能
# 审查后合并
git pull origin feat/shared-feature
git checkout feat/review-branch
git merge feat/shared-feature
实用脚本和工具
1. 状态检查脚本
创建 check_branch_status.sh:
#!/bin/bash
echo "当前分支: $(git branch --show-current)"
echo "与远程的差异:"
git log origin/feat/shared-feature..feat/shared-feature --oneline
echo "等待推送的提交:"
git log feat/shared-feature..origin/feat/shared-feature --oneline
2. 自动化同步脚本
创建 sync_branch.sh:
#!/bin/bash
git fetch origin
git rebase origin/feat/shared-feature
git push origin feat/shared-feature
最佳实践
1. 工作流程建议
- 小批量提交:每次提交只解决一个问题
- 频繁同步:每小时至少同步一次远程分支
- 及时沟通:遇到问题立即与协作者沟通
- 模块清晰:明确分工,减少代码重叠
2. 沟通规范
- 提交信息中标注开发者标识
- 使用TODO注释标注未完成工作
- 定期同步进度和遇到的问题
常见问题处理
1. 分支污染处理
# 当分支历史混乱时
git checkout feat/shared-feature
git fetch origin
git reset --hard origin/feat/shared-feature
# 重新应用本地更改(谨慎使用)
git stash
git pull --rebase origin feat/shared-feature
git stash pop
2. 紧急修复流程
# 如果有人提交了破坏性代码
git revert <错误提交的哈希值>
git push origin feat/shared-feature
材料:
材料一:C应用开发:代码下载&编译&调试指导&上库指导
以7885仓库中applications_settings应用
(https://gitee.com/cooperation-team-7885/applications_settings)为例
1、代码下载
git clone https://gitee.com/cooperation-team-7885/applications_settings.git
2、编译
在deveco studio中打开项目,点击左上角Build—Build Hap(s)/App(s)—Build Hap和App都可以编译,编译完成后会生成build文件夹(在build-profile.json5中查看modules字段,根据srcPath找到build文件夹)
3、调试
目前有两种方式调试,一种是修改完代码后热启动,另一种是编译打包替换hap
第一种:修改完代码保存后,点击右上角设备名称旁边绿色三角符号直接启动。(适用于部分app)
第二种:打开根目录applications_settings/shell(没有shell目录可以去其他应用中复制过来),根据当前应用修改图中路径执行install.bat脚本(适用于所有app)
4、上库
提交代码需关联需求单或缺陷单,commit信息根据规范填写
(单号: 缺陷单地址和描述(eg:#IB3IP3:******)
描述: 缺陷单/需求单描述
问题原因:问题原因描述
解决方案:解决方案描述
是否完成变成规范自检: Y
是否编译且验证通过: Y
影响的设备与平台范围: laphone、 oriole和7885
团队: H)(红色部分为必填)
提交推送完之后会生成pull request,找到刚才提交生成的pull request,在评论区贴上自验证截图后,找仓库负责人+1合并。
材料二:
- 权限开通流程指导
提供邮箱地址并联系cmo---叶向前 (尚月超),
您的邮箱会收到一条加入企业的邀请,请点击同意邀请。
- gitee空间操作指导(需求、问题单)
新建需求、问题单路径:https://e.gitee.com/kunyuan-hongke/issues/table
新建需求如图:
- 点击新建需求
- 填写需求信息,点击新建按钮即可。
新建问题单如图(请添加与问题单相关的附件):
1.点击新建缺陷
2.填写缺陷相关的信息,并添加与问题单相关的附件,点击新建按钮即可
C. weekly版本自验证流程
出周版本时,cmo会在群里发布信息例如:
- 请自行下载网盘分享的内容,并烧录相关版本镜像
- 在本版本上验证自己负责的需求及问题单,并把验证结果及时的填写在上述自验证文档中并注明是否转测试(如上:https://kdocs.cn/l/crxbYApsrlVc
sheet:B1203 缺陷自验证
sheet:B1203 P0自验证)
如有未通过的需求及问题单及时联系cmo澄清具体原因
- 填写完之后cmo会更新需求及问题单状态,请持续关注需求及问题单状态直至关闭为止
更多推荐
所有评论(0)