在我们的项目中,新需求的研发在develop_demmand分支,上一个版本的维护在develop分支;
develop_demmand merge develop
1. 进入develop分支,pull更新到最新的代码;
$ git pull origin develop
2. checkout到develop_demand分支
$ git checkout develop_demand
3. 执行全部pull
$ git pull
4. merge分支develop到demmand
$ git merge develop
这个时候需要特别注意的是如果两个分支的二进制文件都有修改,就会merge不成功;
这种情况下就要把develop分支的二进制修改移植到demmand上来(手动merge);
- 手动merge时,head是最新的,develop代表以前的,删除的时候先删除>>>和<<<字样
- merge成功后编译一下,可鞥会有异常没有解决;
- 然后运行一下,确保程序能正常运行;
注意:有时候merge的时候需要输入提交信息,我们直接wq退出就行,如果结果中带了changeid,就不需要执行step 5,step 6,step 7,直接进入到step 8
$ git status
这个时候已经merge下来了,我们需要把这些merge的代码提交到demmand分支上去;
$ git commit
这个时候会提示一屏,我们使用:wq写入并推出就可以;
$ git commit --amend
使用–amend给提交添加changeid;
$ git push origin develop_demand
9. 代码服务器通过代码
develop merge develop_demmand
1. 进入develop_demand分支,pull更新到最新的代码;
$ git pull origin develop_demand
2. checkout到develop分支
$ git checkout develop
3.执行全部pull
$ git pull
4. merge分支demmand到develop
$ git merge develop_demmand
5. 查看一下本地状态
$ git status
这个时候已经merge下来了,且这些merge的代码自动commit到了develop分支上;提示我们使用git push指令。
6. push代码到远程
$ git push origin develop
这个时候可能提示no new change 而提交失败,我们这个时候使用如下命令
$ git commit --amend
然后什么也不做,直接保存退出就好,可以重新生成sha1,然后就可以push了