当前位置: 首页 > news >正文

git 冲突解决

在使用 Git 时,如果你在合并分支(如 git mergegit pull)时两个分支修改了同一文件的相同位置,就会发生 冲突(conflict)。Git 无法自动决定保留哪部分内容,就需要你手动解决。

下面是解决 Git 冲突的 详细步骤


🔥 一、冲突的表现

执行 git mergegit pull 时会出现如下提示:

Auto-merging file.txt
CONFLICT (content): Merge conflict in file.txt
Automatic merge failed; fix conflicts and then commit the result.

查看冲突文件:

git status

显示类似:

both modified: file.txt

打开 file.txt 文件会看到冲突标记:

<<<<<<< HEAD
这是当前分支的内容
=======
这是要合并进来的分支内容
>>>>>>> branch-name

✅ 二、解决冲突的方式

方式 1:手动编辑文件

  1. 打开冲突文件(如 file.txt

  2. 手动决定保留哪一部分内容,或进行合并调整

  3. 删除所有 <<<<<<<, =======, >>>>>>> 标记

  4. 保存文件


方式 2:使用 VS Code 或其他图形化工具

如果你安装了 VS Code,VS Code 会高亮显示冲突部分,并提供按钮如“接受当前更改”“接受传入更改”“接受两个更改”。

其他图形化工具如:

  • GitKraken

  • Sourcetree

  • GitHub Desktop

  • IntelliJ / WebStorm / PyCharm 等


✅ 三、标记为已解决并提交

当你解决完所有冲突并保存文件后,继续以下步骤:

git add file.txt           # 标记文件已解决
git commit                 # 完成合并并提交(Git 会生成默认的 merge commit message)

如果你是在执行 git rebase,解决冲突后要用:

git add file.txt
git rebase --continue

🔄 四、放弃合并(如果不想继续)

git merge --abort       # 放弃本次 merge
git rebase --abort      # 如果是在 rebase 中冲突

🔍 五、查看冲突前后的版本差异(可选)

git diff                     # 查看当前冲突内容
git log --merge              # 查看有冲突的提交记录
git checkout --theirs file   # 使用远程(合并进来的)版本
git checkout --ours file     # 使用当前分支的版本

http://www.lqws.cn/news/588079.html

相关文章:

  • Android Fragment的生命周期(经典版)
  • 详解 Blazor 组件传值
  • Spring Boot + ONNX Runtime模型部署
  • 【机器学习】感知机学习算法(Perceptron)
  • 安卓面试之红黑树、工厂模式图解
  • 《汇编语言:基于X86处理器》第5章 复习题和练习,编程练习
  • 提升学习能力(一)
  • Python实例题:基于 Flask 的博客系统
  • 打卡day58
  • 【软考高项论文】论信息系统项目的范围管理
  • [Vue2组件]三角形角标
  • java初学习(-2025.6.30小总结)
  • 从入门到精通:npm、npx、nvm 包管理工具详解及常用命令
  • 【期末分布式】分布式的期末考试资料大题整理
  • 安装bcolz包报错Cython.Compiler.Errors.CompileError: bcolz/carray_ext.pyx的解决方法
  • 服务器被入侵的常见迹象有哪些?
  • AI--提升效率、驱动创新的核心引擎
  • 项目管理进阶——133个软件项目需求评审检查项
  • 集群【运维】麒麟V10挂载本地yum源
  • 03认证原理自定义认证添加认证验证码
  • WebSocket 的核心原理和工作流程
  • 关于 java:8. Java 内存模型与 JVM 基础
  • 嵌入式原理与应用篇---常见基础知识(10)
  • 实战案例:使用C#实现高效MQTT消息发布系统
  • w-笔记:uni-app的H5平台和非H5平台的拍照识别功能:
  • Python 库 包 软件开发工具包(SDK) openai
  • AlpineLinux安装docker
  • STM32——DAP下载程序和程序调试
  • 初始化挂载Linux数据盘
  • Android 中 使用 ProgressBar 实现进度显示