git版本控制合并冲突解决

一、合并分支

基本语法:

复制代码
git merge 分支名

说明:在当前分支下,将其它分支的代码合并过来。

二、冲突原因

如果 a 或 b 分支只有一个分支修改过,则合并不会出现冲突;如果两个分支都各自修改过同一份文件,则合并会出现冲突。两个分支在同一个文件的同一个位置有两套完全不同的修改,Git 无法替我们决定使用哪一个。必须手工解决新代码内容。

1)冲突产生的表现:后面状态为 MERGING

2)查看状态(检测文件有两处修改)

复制代码
git status

三、解决步骤

1)步骤 1:编辑有冲突的文件

这里手动编辑并处理有冲突的文件。

具体操作:删除特殊符号,决定要使用的内容

特殊符号:<<<<<<< HEAD 当前分支的代码 ======= 合并过来的代码 >>>>>>

tips:编辑冲突的文件,把">>>>>>>>>"、"<<<<<<"和"========"等这样的行删除,编辑至满意的状态,提交

2)步骤 2:添加到暂存区
3) 步骤3:执行提交

提交后,发现后面 MERGING 消失,变为正常。
注意:此时使用 git commit 命令时不能带文件名。因为我们解决冲突,可能存在于多个
文件中,这里就不能也不需要指定具体的文件名了。

四、如何避免冲突

  1. 各人维护各人的代码分支,要避免多个人在各自分支上修改同一个文件。
  2. 避免在 master 分支上写代码。

总结:在一个项目中,配置类和工具类是可能被多人多个子模块共享的,都修改的话,怎么避免冲突?回答:尽量由一个人进行统一的维护。修改好后,其他人来更新即可。

相关推荐
lifewange6 小时前
常用的Git命令有哪些?
git
无限进步_7 小时前
【C++】电话号码的字母组合:从有限处理到通用解法
开发语言·c++·ide·windows·git·github·visual studio
C++ 老炮儿的技术栈7 小时前
GCC编译时无法向/tmp 目录写入临时汇编文件,因为设备空间不足,解决
linux·运维·开发语言·汇编·c++·git·qt
英俊潇洒美少年7 小时前
Git 常用命令速查表(前端开发专属版)
git
华科大胡子11 小时前
Git二分法定位Bug
git
m0_5791466513 小时前
Git暂存区操作与版本回退
git
三毛的二哥13 小时前
git:git worktree多任务并行开发
git
Yiyi_Coding13 小时前
Git 版本管理重要撤回操作
git
a里啊里啊14 小时前
Git常问面试题
git
达子66614 小时前
Git中文文件名乱码显示SHA-1 哈希值
git·算法·哈希算法