重要:如何进行代码合并develop和master开发流程
作者: 阿蒙 时间: 2019-5-9 标签: 工具流程 浏览: 4862 评论: 0
重要的事情前面说
下面用到git push git pull命令都要在分支与远程分支建立跟踪关系之后再使用,如何确认分支已经建立关系呢?
请使用git status 命令
一般情况会输出如下:
```
hedonghong@2F-hedonghong MINGW64 /d/wamp55/www/hedonghong/testgit (feature_01)
$ git status
On branch feature_01
Your branch is up to date with 'origin/feature_01'.
nothing to commit, working tree clean
```
【On branch feature_01 和 Your branch is up to date with 'origin/feature_01' 分支名字一致就是已经建立跟踪关系了】
跟踪关系就说别人改了代码你也可以拉取到,并且可以省略一些命令,比如上面的git push、git pull等等
完整命令如下:
```
git push origin 本地分支名称:远程分支名称
git pull origin 本地分支名称:远程分支名称
```
如何建立关系请看下面教程第2步
#日常开发过程
1、新建分支
```
git checkout -b feature_xxx origin/master
```
2、建立本地分支和远端分支跟踪关系(跟踪:别人改了你可以拉到别人的代码),只适用与新建分支建立跟踪关系
```
git push -u origin feature_xxx
```
//编码工作
3、直接拉取远端最新feature_xxx代码覆盖到你本地(如果多人开发相同分支就会有最新代码,如果是一个人开发一个功能可以不用git pull)
```
git pull
```
4、推送本地分支feature_xxx到远程feature_xxx分支
```
git push
```
5、代码合并到develop,情况如下:
```
a、开发切换到develop,合并feature_xxx到develop,若有冲突,解决冲突再次提交develop代码到远端develop
命令如下:
git checkout develop
git pull
git merge origin/feature_xxx
//合并的时候出现包含代码的黑窗口可以先shift+:号键在输入wq,再按回车,或者不懂操作的问【何东红】,合并代码后检查代码
1、无冲突:
git push
2、有冲突:
//若有冲突,解决冲突,并且用git status查看你解决冲突后存在修改的代码
git status
//再次提交代码到本地develop
git add .
git commit -m "备注"
//推送本地develop到远端develop
git push
```
6、测试验证,情况如下
```
a、测试通过,测试可以进行合并代码到master
b、测试发现问题,开发修改代码后再次git push到远端,测试再次进行第5步操作
```
7、发布:测试在gitlab将feature_xxx请求合并到master,情况如下:
```
a、有冲突,测试人员关闭合并请求页面,开发去测试本地,切换到master,合并feature_xxx到master,解决冲突再次提交master代码到远端master
命令如下:
git checkout master
git pull
git merge origin/feature_xxx
git push
//合并没有问题后,删除远端feature_xxx分支
//【有冲突像第5步一样解决!!】
b、没有冲突,测试页面合并完之后删除远端feature_xxx分支
```
下面用到git push git pull命令都要在分支与远程分支建立跟踪关系之后再使用,如何确认分支已经建立关系呢?
请使用git status 命令
一般情况会输出如下:
```
hedonghong@2F-hedonghong MINGW64 /d/wamp55/www/hedonghong/testgit (feature_01)
$ git status
On branch feature_01
Your branch is up to date with 'origin/feature_01'.
nothing to commit, working tree clean
```
【On branch feature_01 和 Your branch is up to date with 'origin/feature_01' 分支名字一致就是已经建立跟踪关系了】
跟踪关系就说别人改了代码你也可以拉取到,并且可以省略一些命令,比如上面的git push、git pull等等
完整命令如下:
```
git push origin 本地分支名称:远程分支名称
git pull origin 本地分支名称:远程分支名称
```
如何建立关系请看下面教程第2步
#日常开发过程
1、新建分支
```
git checkout -b feature_xxx origin/master
```
2、建立本地分支和远端分支跟踪关系(跟踪:别人改了你可以拉到别人的代码),只适用与新建分支建立跟踪关系
```
git push -u origin feature_xxx
```
//编码工作
3、直接拉取远端最新feature_xxx代码覆盖到你本地(如果多人开发相同分支就会有最新代码,如果是一个人开发一个功能可以不用git pull)
```
git pull
```
4、推送本地分支feature_xxx到远程feature_xxx分支
```
git push
```
5、代码合并到develop,情况如下:
```
a、开发切换到develop,合并feature_xxx到develop,若有冲突,解决冲突再次提交develop代码到远端develop
命令如下:
git checkout develop
git pull
git merge origin/feature_xxx
//合并的时候出现包含代码的黑窗口可以先shift+:号键在输入wq,再按回车,或者不懂操作的问【何东红】,合并代码后检查代码
1、无冲突:
git push
2、有冲突:
//若有冲突,解决冲突,并且用git status查看你解决冲突后存在修改的代码
git status
//再次提交代码到本地develop
git add .
git commit -m "备注"
//推送本地develop到远端develop
git push
```
6、测试验证,情况如下
```
a、测试通过,测试可以进行合并代码到master
b、测试发现问题,开发修改代码后再次git push到远端,测试再次进行第5步操作
```
7、发布:测试在gitlab将feature_xxx请求合并到master,情况如下:
```
a、有冲突,测试人员关闭合并请求页面,开发去测试本地,切换到master,合并feature_xxx到master,解决冲突再次提交master代码到远端master
命令如下:
git checkout master
git pull
git merge origin/feature_xxx
git push
//合并没有问题后,删除远端feature_xxx分支
//【有冲突像第5步一样解决!!】
b、没有冲突,测试页面合并完之后删除远端feature_xxx分支
```
本文相关标签: git
发表评论: