记录一个git的使用:今天有一个需求测试完了,准备发布,测试让我合到release上吧,但是我,我居然忘记怎么合到release分支的操作了,一脸尴尬,于是回家后果断建了一个项目独自尝试了好几次,终于明白这个反合的操作了 (太菜了)
首先,这里假设我们的项目是这样的:一个release分支,主要是这个项目的上生产的发布分支,另一个则是我们开发人员自己建的开发dev分支。此外,git的所有操作都是在 gitlab 平台上(因为公司是用的gitlab,话说怎么在github上找不到分支图啊):
-
1、dev正常开发,并push很多版本用于保存、测试等;而release则在我们开发期间,可能出现很多的提交,即dev开发一段时间后,release已经更新很多了。大致的分支图如下(这里手滑release分支的commit信息写错了,见谅):
-
2、然后我们开发完毕,要合到release上,发现release已经更新了,所以要将release上的内容反合到dev上,操作如下:
-
1)首先更新release(pull)
-
2)将更新后的release合并到dev上(反合):
-
3)检查冲突,因为此时可能release上已经有对dev上的相同文件的改动,所以需要我们手动解决冲突(conflicts)
-
4)此时本地的dev分支的反合过程就完毕了,可以在分支图上看到merge的结果:
-
-
3、将dev的commit操作push上去,因为上面的操作都是我们在本地的操作,反合过程可能会有很多新的更改(相对于dev),所以我们需要将dev再次更新到远程仓库:
此时可以看到我们merge的commit以及release更新的文件 -
4、在gitlab上创建一个新的merge请求,然后选定审批人、提交等待审批,完成后就可以看到自己的dev合并到了release啦:
(完)