先声明几个变量
仓管A:主分支,只有master分支如下图
仓管B:开发分支,只有各个业务开发分支
仓管B fork 于 A
![600](https://i-blog.csdnimg.cn/blog_migrate/6eeb991350838c64ea86f635abbb2cc5.png)
为了保证 代码的稳定性,只有 仓管B中的某个分支测试完毕并进行了代码review 才可以 和 仓管A进行 merge
PS: 只有仓库B所有开发都有权限 仓库A 只有特定人才有权限,这样可以保证仓库A的代码稳定性
流程和命令如下:
1.某业务功能确定要开发,2015年6月20号开始开发,新建分支
git checkout -b pmt_20150630_walle remote_a/master //从 A仓管新建分支
git push remote_b pmt_20150630_walle:pmt_20150630_walle //在B仓管新建分支pmt_20150630_walle这样其他人可以直接使用此分支开发
2.开发过程中提交更新 直到测试
git add .
git commit -am "vincent -- comment"
git push remote_b pmt_20150630_walle:pmt_20150630_walle //推送更新到远程
3.测试完成 准备合并到A的master
git fetch --all
git rebase remote_a/master
git add .//如果有冲突,解决冲突,然后git add. ,git rebase --continue,一直重复直到合并成功
git rebase --continue
git push remote_b pmt_20150630_walle:pmt_20150630_walle -f //强制推送rebase合并的到对应分支
4. 在git工具中直接提 merge request ,然后merge到 仓库A的master 。如果公司有开发发布平台,那么这一步直接在发布机器服务器进行merge 命令操作
原文地址: 【Git 使用笔记】第四部分:git在公司中的开发流程
标签: 分支 开发 仓管 A B rebase merge git
智能推荐
- 【Git 使用笔记】第一部分:安装git 和 使用git
- 【Git 使用笔记】第二部分:基本命令 和 单分支开发
- 【Git 使用笔记】第三部分:多分支开发
- Nginx 常用全局变量 及Rewrite规则详解
- 【Java】一台服务器配置多个Tomcat