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

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

相关推荐
用户9186861286873 小时前
Git 版本控制完全指南:从入门到精通
git
简离5 小时前
Git 一次性清理已跟踪但应忽略文件
前端·git
Drone_xjw5 小时前
【环境搭建】Windows 10上使用Docker搭建本地Git仓库(Gitea)完整教程
windows·git·docker
疯狂成瘾者5 小时前
git学习目录
git·学习
曾几何时`6 小时前
Git——自用手册
git
新镜10 小时前
【git】 曾经合入的文件被删除,再次合入时,相同的文件路径并不会自动合入
git
console.log('npc')11 小时前
git commit之后,想撤销commit
git
春日见11 小时前
UniAD的逻辑,与传统自动驾驶的差异
人工智能·windows·git·机器学习·docker·容器·自动驾驶
奋斗者1号12 小时前
解决Git Push Gerrit分支失败的全流程实战
大数据·git·elasticsearch
alanesnape12 小时前
在 Surface Pro X (ARM64) 上成功部署 Claude Code 的完整复盘
git·node.js·claude code部署·msys2clangarm64·美区apple id·礼品卡支付·surface pro x