当前位置:首页 >> 网络编程

idea+git合并分支解决冲突及详解步骤

Git分支详解参考:

分支管理组成

1.1、master主干

在版本管理中,代码库应该仅有一个主干。此主干是和当前生产保持一致的,是可用的、稳定的可直接发布的版本,不能再主干上进行任何开发操作。git主干的名字,默认叫做 master,它是自动建立的。

1.2、develop主开发分支

因为不能在主干master上进行开发,那么就需要在基于主干master的基础上,创建一个开发主分支develop,开发主分支develop的代码永远是最新的,所有的新功能都是以此分支为基础进行开发的,该分支只是做合并操作,也不能在此分支进行实际开发。

1.3、feature功能开发分支

功能开发分支,在develop上创建分支,采用“feature-” +“分支创建时间”+ “批次名称-”的命名规范。
例如:“feature-20190301-XXX”
此分支既作为需求开发分支又作为需求测试分支,所有需上线内容需在当前分支充分测试通过后,才可提交test分支与其他待上线分支代码进行合并,然后进行test分支回归测试。

1.4、test测试分支

test分支它是指发布正式版本之前(即合并到 master分支之前),我们需要有一个预发布的版本进行测试。
预发布分支是从develop分支上面分出来的,预发布部署生产验证无误,结束以后,必须向下合并进 master和develop分支以及develop衍生所有开发分支,保证各分支基线版本与生产基线同步。

1.5、hotfix紧急bug分支

项目上线后会遇到一些需要紧急修复的bug,那么就需要创建一个紧急bug修改分支,此分支需要从master直接拉取分支进行开发修改,修复完成后必须向下合并进 master和develop分支以及develop衍生所有分支,保证各分支基线版本与生产基线同步。
采用
“hotfix-” +“分支创建时间”+“bug号或bug描述”的命名规范。
例如:“hotfix-20190116-001”

1、切换分支

1)在idea页面右下角点击分支名

idea+git合并分支解决冲突及详解步骤

2)在git 分支选择框中选择项目一步步选择需要的分支

这里先演示切换到master主干分支,点击Checkout切换

idea+git合并分支解决冲突及详解步骤

3)切换master主干分支成功

idea+git合并分支解决冲突及详解步骤

2、合并分支

1)master合并bug001分支

2.1.1. 拉取分支步骤:在项目上右键,Git -> Repository -> Pull

idea+git合并分支解决冲突及详解步骤

2.1.2. 在更新代码的时候,选择001分支代码,合并到当前分支master,点击Pull

idea+git合并分支解决冲突及详解步骤

2.1.3. 更新结果,显示37个文件已更新

idea+git合并分支解决冲突及详解步骤

2.1.4. 从001分支更新代码到当前分支master后,已存到本地仓库,因此需要把本地仓库完整的master分支代码Push到远程分支master分支;Git -> Repository -> Push

idea+git合并分支解决冲突及详解步骤

2.1.5. 点击Push后,出现详细的推送说明,点击Push

idea+git合并分支解决冲突及详解步骤

2)develop合并master分支

2.2.1 切换develop分支,原则上develop分支的代码必须和master主干保持一致

idea+git合并分支解决冲突及详解步骤

2.2.2. 拉取分支步骤:在项目名上右键,Git -> Repository -> Pull,参考2.1.1
先更新远程develop分支到本地,看看有没有需要更新的代码,有的话直接更新

idea+git合并分支解决冲突及详解步骤

2.2.3. 显示 no items,说明没有需要更新的代码

idea+git合并分支解决冲突及详解步骤

2.2.4 master分支已经最新的,因此需要把master分支代码合并到develop分支
Git -> Repository -> Pull,选择master分支代码,合并到当前分支develop,点击Pull

idea+git合并分支解决冲突及详解步骤

更新结果为37文件

idea+git合并分支解决冲突及详解步骤

2.2.5. 把本地仓库develop分支的代码提交到远程分支develop;Git -> Repository -> Push

idea+git合并分支解决冲突及详解步骤

显示Push成功

idea+git合并分支解决冲突及详解步骤

3)Hebei合并develop分支

2.3.1. 切换Hebei分支

idea+git合并分支解决冲突及详解步骤

切换成功

idea+git合并分支解决冲突及详解步骤

2.3.2 更新本分支代码,拉取分支步骤:在项目名上右键,Git -> Repository -> Pull,参考2.1.1

idea+git合并分支解决冲突及详解步骤

idea+git合并分支解决冲突及详解步骤

2.3.3 合并develop分支代码到当前分支hebei; Git -> Repository -> Pull

idea+git合并分支解决冲突及详解步骤

2.3.4. 更新时出现冲突文件(20200604 更新,内容是最新的,和上面develop分支内容已不一致)
解决冲突:
选中文件,点击右侧的Merge…

idea+git合并分支解决冲突及详解步骤

2.3.5. 冲突文件界面解释
冲突文件界面,分为三个部分,最左侧是本地代码;中间是解决冲突后的最终结果文件;最右侧是远程分支的代码
通过比较文件内容,合并需要的代码到中间的位置,最后点击Apply就完成了

解决步骤如下:

idea+git合并分支解决冲突及详解步骤

idea+git合并分支解决冲突及详解步骤

idea+git合并分支解决冲突及详解步骤

idea+git合并分支解决冲突及详解步骤

idea+git合并分支解决冲突及详解步骤

idea+git合并分支解决冲突及详解步骤

更新后的结果为5个文件,其中包含一个解决冲突后的文件

idea+git合并分支解决冲突及详解步骤

2.3.6. 因为在合并develop分支代码到当前分支hebei 时出现冲突,并且解决冲突后,需要先把代码提交到本地仓库,再把本地仓库的代码提交到远程分支。

右击项目名:
Git-> Commit Directory…

填写适当地 提交信息,然后点击Commit and Push

Commit and Push解释:
先把本地代码提交到了本地仓库,然后等待片刻会自动弹出Push的窗口,再把本地仓库代码推到远程

idea+git合并分支解决冲突及详解步骤

idea+git合并分支解决冲突及详解步骤

2.3.7 查看提交信息,然后点击Push,即可把代码提交到远程分支。

idea+git合并分支解决冲突及详解步骤