【Git】深入理解 Git 分支合并操作:git merge dev 命令详解

news/2024/4/15 17:18:29/文章来源:https://blog.csdn.net/qq_37500874/article/details/136424973

深入理解 Git 合并操作:git merge dev 命令详解


摘要:本文将深入探讨 Git 中的合并操作,以及如何使用 git merge dev 命令将dev 分支的修改合并到当前分支(假设当前分支为main 分支)中。通过详细的解释和示意图,读者将能够更好地理解 Git 合并操作的原理。

正文:在软件开发过程中,经常会使用版本控制系统来管理项目的代码,其中 Git 是目前最流行的版本控制系统之一。在 Git 中,合并(Merge)是将两个或多个分支的修改集成到一起的常见操作之一。
其中,git merge dev 命令用于将dev 分支的修改合并到当前分支中。


1. 合并操作的原理

从文件内容的角度来看,合并操作实际上是将两个被合并分支的最新提交中的文件内容进行整合,生成一个新的包含了这些整合后文件内容的合并提交


2. 使用示例

假设我们有两个分支:main 分支dev 分支。要将 dev 分支的修改合并到 main 分支中,可以执行以下命令:

git checkout main   # 切换到 main 分支
git merge dev         # 将 dev 分支的修改合并到 main 分支中

执行 git merge dev 命令后,Git 将会自动执行合并操作,并生成一个新的合并提交,将 dev分支 的修改整合到 main分支 中。

注意:如果在合并过程中发生了冲突,即同一文件的同一部分在两个分支上有不同的修改,Git 将会暂停合并操作,并提示你解决冲突。在手动解决冲突后,可以使用 git add 命令(Git 会将冲突标记在受影响的文件中,并将这些文件标记为 Unmerged paths)将冲突的文件标记为已解决,然后使用 git commit 命令提交解决方案,生成合并提交


3. 示例示意图

合并前:
合并前
合并后:
合并后

其中 C7 就是合并提交
注意:合并前后dev分支的commit历史线没变
而合并前后main分支的commit历史线 C 0 − > C 1 − > C 2 − > C 5 − > C 6 C0->C1->C2->C5->C6 C0>C1>C2>C5>C6变成了 C 0 − > C 1 − > C 2 − > C 3 − > C 4 − > C 5 − > C 6 − > C 7 C0->C1->C2->C3->C4->C5->C6->C7 C0>C1>C2>C3>C4>C5>C6>C7


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_997736.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

文献速递:深度学习疾病预后--临床级计算病理学使用基于整张切片图像的弱监督深度学习

Title 题目 Clinical-grade computational pathology using weakly supervised deep learning on whole slide images 临床级计算病理学使用基于整张切片图像的弱监督深度学习 01 文献速递介绍 The development of decision support systems for pathology and their deplo…

java SSM科研管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java SSM科研管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S…

C# 由左上、右下两个坐标点计算矩形的长、宽以及两点的距离

一、计算长、宽 直接使用坐标点计算 // 定义矩形左上角和右下角的坐标 Point topLeft new Point(0, 0); Point bottomRight new Point(5, 10); // 计算矩形的长和宽 int width bottomRight.X - topLeft.X;//矩形宽度 int height bottomRight.Y - topLeft.Y;//矩形高度或是…

谷粒商城实战(002 oss 文件储存系统)

Java项目《谷粒商城》架构师级Java项目实战,对标阿里P6-P7,全网最强 总时长 104:45:00 共408P 此文章包含第61p-第p101的内容 简介 P61 服务器 对象存储服务 OSS 也可以用minio 三种上传方式 推荐第三种 1.过服务器 安全 但是占用性能 2.不过服…

natfrp和FRP配置SSL的基本步骤和bug排查

获取免费/付费SSL 我直接买了一年的ssl证书 设置 主要参考:https://doc.natfrp.com/frpc/ssl.html 遇到的Bug root域名解析是ALIAS,不是CNAME不要用NATFRP (SakuraFrp)同步Joplin,会出现webdav错误导致大量笔记被…

哈希专题 - leetcode 1. 两数之和 - 简单难度

leetcode 1. 两数之和 leetcode 1. 两数之和 简单难度 哈希1. 题目详情1. 原题链接2. 基础框架 2. 解题思路1. 题目分析2. 算法原理3. 时间复杂度 3. 代码实现4. 知识与收获 leetcode 1. 两数之和 简单难度 哈希 1. 题目详情 给定一个整数数组 nums 和一个整数目标值 target…

go语言基础 -- 单元测试

go语言testing框架说明 go语言有自己的测试框架,封装在testing包中。 我们编写的测试案例通常都写在xxx_test.go文件中,比如我们写了个calc.go,对里面的函数进行测试,通常会写一个calc_test.go;testing框架会将_test.go结尾的文件引入;testing框架会在自己的main方法中执…

2024.3.4 JAVA 复习

Java环境搭建 1、JDK和JRE的概述 JDK:Java开发工具包(Java Development Kit), 包含开发工具 和 JRE. 常用的开发工具: javac, java JRE:Java运行时环境(Java Runtime Environment), 包含运行Java程序时所需的核心类库和 JVM. 核心类库: java.lang, jav…

Node.js作用

Node.js可以开发应用 开发服务器应用 开发工具类应用 开发桌面端应用

UOS 与 Ubuntu 命令行打开安装包界面,双击打开界面调用安装包界面展示

UOS 使用deepin-deb-installer安装程序 deepin-deb-installer xxxxxxx.deb & Ubuntu snap-store --local-filename /home/seven/wps-office_1xxxxxxx.deb &

卧室装修干货|榻榻米的4种类型及优缺点。福州中宅装饰,福州装修

卧室想要做榻榻米设计,不知道如何下手,这篇文章一定要看:常见榻榻米的类型有哪些?这些类型分别有哪些优缺点呢? 榻榻米是一种传统的日本床铺设计,近年来在现代室内设计中越来越受欢迎。它以低矮的床垫和简洁的线条为…

智慧灯杆-智慧城市照明现状分析(1)

城市道路照明是城市公共设施的重要组成部分,而随着城镇化建设的推进,城市道路照明路灯的数量越来越多,能耗越来越高,供电趋于紧张。此外,城市照明的维护工作和高昂的维护成本(人工控制、路灯巡查等),给城市管理造成了巨大的困难。管理部门需要更有效率的管理和节能方案…

【新版Hi3521DV200处理器性能】

新版Hi3521DV200处理器性能 Hi3521DV200是针对多路高清/超高清(1080p/4M/5M/4K)DVR产品应用开发的新一代专业SoC芯片。Hi3521DV200集成了ARM Cortex-A7四核处理器和性能强大的神经网络推理引擎,支持多种智能算法应用。同时,Hi352…

leetcode 热题 100_滑动窗口最大值

题解一: 双端队列:滑动窗口的本质是在窗口末尾添加一个元素,并移除头部的一个元素。对于添加的元素,直接和当前最大值比较即可,但对于移除的元素,如果移除的是原先的最大值,则需要重新遍历窗口寻…

甘特图资源视图和任务视图的区别

甘特图(Gantt chart)是一种常用的项目管理工具,用于直观地展示项目的进度和各项任务的时间安排。甘特图包含资源视图和任务视图两种视角。 一个项目的甘特图demo : https://zz-plan.com/share/87f1340286f1343ba5 资源视图主要显示项目中不同资源的分配和利用情况…

大数据Doris(六十七):Doris on ES在快手商业化的架构实现

文章目录 Doris on ES在快手商业化的架构实现 一、架构图

子查询与连表查询

子查询与连表查询 标签:数据库 子查询 mysql> explain select e.empno,e.ename,(select dname from dept d where e.deptno d.deptno) as dname from emp e where e.deptno 1; -------------------------------------------------------------------------------------…

c++ 11 新特性 不同数据类型之间转换函数之const_cast

一.不同数据类型之间转换函数const_cast介绍 const_cast是C11中引入的一种类型转换操作符,用于修改类型的const或volatile属性。const_cast的主要用途是移除对象的常量性,它是唯一具有此能力的C风格的转型操作符。在C11中,const_cast可以完成…

【uni-app小程序开发】实现一个背景色渐变的滑动条slider

最近做的一个用uni-app+vue2开发的微信小程序项目中要实现一个滑动进度控制条,如下图所示: 1. 滑动条需要渐变背景色 2. 滑块的背景色需要与当前位置滑动条的背景色一致(动态改变) 碰到这样的需求,我当然先是看看官方提供的slider组件和uView里的u-slider组件能不能满足…

华为OD机试 - 字符串统计(Java 2024 C卷 100分)

目录 专栏导读一、题目描述二、输入描述三、输出描述1、输入2、输出3、说明 四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2024C卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题&a…