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

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

相关推荐
亿道电子Emdoor4 小时前
【Perforce】Klocwork-kwgcheck图形化界面无法打开如何解决
git·python·github
小此方1 天前
「插曲:Git」企业规范篇:DevOps开发模型、Git Flow五类分支设计与测试/预发布/生产环境Bug修复及Hotfix紧急发布流程
git·bug·devops
溪语流沙1 天前
【Web全栈进阶】JWT无状态认证:签发、校验、刷新
前端·git·python·github
OsDepK1 天前
osgit纯图形化git版本管理工具,多人开发团队协作工具,支持Mac与Windows
git
Madison-No71 天前
Git版本控制工具(一)
git
小小小米粒2 天前
重置本地git
大数据·git·elasticsearch
鶴哥只手遮天2 天前
第 8 章 工作区与检出:unpack-trees 与并行 checkout
git
xing-xing2 天前
git 相关命令总结
git
A-刘晨阳2 天前
GitLab + ArgoCD 实现 Kubernetes GitOps 自动化部署
运维·人工智能·git·kubernetes·自动化·云计算·argocd
ControlRookie3 天前
SyncBridge:一个 CODESYS 工程与 AI 之间工程师级的同步工具
git·ai编程·codesys·工业软件·controlrookie