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

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

相关推荐
春日见10 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
stevenzqzq1 天前
git 常用操作
大数据·git
Curvatureflight1 天前
Git工作流最佳实践:从混乱到优雅
git
wu~9701 天前
GitHub永不遗忘,使用git push -f来覆盖的提交依旧保留
git·github
Vermouth_001 天前
git clone的时候提示access denied
git
qq_437657271 天前
清楚本地的git并重新登录
git
jiang_changsheng1 天前
工作流agent汇总分析 2
java·人工智能·git·python·机器学习·github·语音识别
顶点多余1 天前
版本控制器-git
linux·git
夔曦1 天前
Git工程日常下拉/上传完整流程(自用)
git
岱宗夫up1 天前
GitHub Desktop如何设置中文?这不是个简单问题
git·github