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 分支上写代码。

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

相关推荐
Aurora_th10 小时前
浙江海洋大学 资料共享 期末考试卷、课程资料等
git·github
奶茶树13 小时前
【C++】13. C++11新特性【上】
c语言·开发语言·c++·git·github
夏至春来-美美1 天前
git clone报错
git
拂拉氏1 天前
【Linux】 开发工具(Makefile、git、cgdb)解析与对于操作系统的基础认识
linux·git·操作系统·makefile·cgdb
番茄不是西红柿kk1 天前
deepseek-harness跨平台桌面端二开项目(附git仓库地址+安装包)
git·agent·codex·deepseek·deepseekharness
leoZ2312 天前
10-Git 仓库蒸馏术:从代码仓库到 OpenClaw 虚拟人-蒸馏工具链
大数据·git·深度学习·神经网络·目标检测·elasticsearch·lstm
fpcc2 天前
工具使用—git diff命令分析说明
git·工具
console.log('npc')2 天前
Git 删除指定提交记录操作指南
git
随风丶飘2 天前
[特殊字符] 告别“update“和“fix bug“——Smart Git Commit LLM 让 AI 帮你写专业的 Git 提交信息
人工智能·git·bug
yanlaifan2 天前
git clone时候指定换行符
git