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

Git三路合并算法的弊端

背景

最近在做分支merge,结果发现有的行莫名其妙丢失了。

在看接下来的内容前,请先了解“revert的副作用”: https://blog.csdn.net/qq_32460431/article/details/130770633https://blog.csdn.net/qq_32460431/article/details/130770633

三路合并算法的介绍

当Git merge 两个分支F1和F2时,例如 将 F2 merge给 F1时,且F1和F2 的merge-base称为Base。Git 针对一块代码,将会有如下反应:

Remote (F2)BaseLocal(F1)含义结果
AAA完全一致不是冲突,没有合并,保持现状:  A
AAB单边差异不是冲突,只是合并,结果是: B
ABB单边差异

不是冲突,只是合并,结果是: A

ABC两边都变更了是冲突,要手动处理

表格中,Remote 也就是 来客Incoming 。Local 是 当前接受merge者,是当前分支。

于是,F2上的 临时性修改、错误修改、(关于A的)Revert ,这些都是典型的代码丢失,或错误的情况:

本质上是F2分支上的不正确代码,污染了merge后的结果。

这里提到的F2如果是F1,也是同样情况(对称的情况)。

http://www.dtcms.com/a/507005.html

相关文章:

  • 网站模板文件扫描工作招聘58同城
  • 网站建设上线问题企业网站的推广方法有哪些
  • LeetCode:207. 课程表
  • Oracle EBS ERP开发——报表生成Excel标准模板设计
  • CANoe基础讲解02:掌握CANoe Trace窗口
  • Kanass V1.3.3版本发布,支持在线安装与消息配置
  • 第十七篇:本地模型部署:使用DeepSeek开源模型进行离线推理
  • 【STM32项目开源】基于STM32的智能家居环境监测系统
  • 串口AT指令控制EC20连接MQTT服务器
  • 如何实现企业网站推广的系统性网站建设腾讯课堂
  • 全网营销型的网站wordpress 开源吗
  • 常见Linux环境变量深度解析
  • Jetson上安装TensorRT
  • 开发避坑指南(62):解决URLDecoder:Illegal hex characters in escape (%) pattern 异常
  • DAX分列年月日
  • 【开题答辩实录分享】以《自然灾害隐患点管理信息系统》为例进行答辩实录分享
  • dpdk如何与内核进行交互——vdev的用法
  • 丝杆模组如何满足高精度加工设备的高要求?
  • 咋做网站泉州网络推广专员
  • 【STL——vector容器】
  • 如何做网站流量统计网站建设公司中企动力
  • 练习python题目小记(三)
  • 技术视角下的财务自动化:如何用最优TCO评估RPA机器人的性价比?
  • C++ 模板再升级:非类型参数、特化技巧(含全特化与偏特化)、分离编译破解
  • 京东客网站怎么做网站开发公司创业策划
  • 线性表实战:顺序表与链表的奥秘
  • 模块的波动对整个系统的影响
  • Linux服务器编程实践58-getnameinfo函数:通过socket地址获取主机名与服务名
  • Kubernetes(三) Pod 详解与 YAML 配置实战指南
  • 做网上购物网站网络培训seo