多人协作开发git merge合并功能出现冲突时解决思路

目录

问题背景描述

解决思路

解决详细步骤

经验适用场景


问题背景描述

现在有一个本地分支A,远端其中两个分支B、C,其中C为主分支,A和B目前版本是一致的,且都比较新,C的版本比较落后,现在需要从分支B合并到C。但是远程个人分支B向远程目标分支C进行merge时出现冲突。

解决思路

解决思路主要为:先将远端目标分支C向本地源分支A合并,合并时出现冲突,然后在本地文件中进行冲突解决。解决好后再向远端B推送,然后再次由B向C发起合并请求就没问题了。

解决详细步骤

1.先在本地git fetch,以便获得最新远端分支C的最新版本

2.然后在本地将最新远端分支C合并到本地分支A, git merge origin/C A

上面这条合并命令后,会出现提示信息,哪些文件合并顺利的,哪些出现了冲突

3.然后针对出现冲突的那些文件,在ide中查看,每个有冲突的部分大概像下面这样

bash 复制代码
<<<<<<< HEAD
你的改变
=======
他人的改变
>>>>>>> 分支名

4.你需要手动解决这些冲突:手动编辑这些区域,选择你想要保留的更改,并删除冲突标记符号(<<<<<<<, =======, >>>>>>>)。

5.保存文件:将解决冲突后的文件保存。保存可以用git status查看状态。

6.提交:执行git add将解决后的文件标记为已解决冲突,然后可以继续使用git commit来提交。

7.推送:将本地分支A推送到远程分支B,必要时强制推送

8.再次合并:将远程分支B合并到远程分支C

经验适用场景

多人协同开发时,比如每个人开发一个功能分支,开发完成后,每个人都会向主分支发起合并请求(merge request),对每个人的合并请求处理是有先后顺序的,合并第一个人的功能时可能不会出现冲突,但第二个人就就可能出现冲突,这时就需要对冲突给予解决,本文提供一定参考思路,实际工作时可能需要更加灵活处理。



end

相关推荐
cc蒲公英5 小时前
idea git命令初次创建项目至远程
git
高兴就好(石6 小时前
git将远程的master分支的commit都拉取到本地
git
空空kkk8 小时前
Git版本控制(一)
git
毛豆的毛豆Y9 小时前
git 如何 fork 一个仓库的所有分支
git
测试人社区—841610 小时前
Postman API测试指南
人工智能·git·测试工具·自动化·bug·postman
芒克芒克12 小时前
『Git Tag标签+项目远程操作全解:推送、拉取与版本同步实战』
java·git
fruge13 小时前
前端工程化最佳实践:ESLint+Prettier+Git Hooks 统一开发规范
前端·git
_院长大人_13 小时前
解决 Git 提交大文件导致 Push 被拒绝的问题
java·git·后端·elasticsearch
浪潮IT馆13 小时前
win11安装Git
windows·git
SoulmateShkart14 小时前
Git基本使用命令简略版
git