Git学习笔记(第4章):Git分支

目录

4.1 分支的概述

4.1.1 什么是分支

4.1.2 分支的好处

4.2 查看分支(查)

4.3 创建分支(增)

4.4 切换分支

4.5 修改分支(改)

4.6 合并分支(正常合并)

4.7 合并分支(冲突合并)

4.7.1 产生冲突的表现

4.7.2 产生冲突的原因

4.7.3 解决冲突的办法

小结


4.1 分支的概述

        一般公司会有多个服务器,每个服务器的作用不尽相同,比如开发环境、测试环境、生产环境等。

4.1.1 什么是分支

        在版本控制过程中,有时需要同时推进多个任务。此时,我们可以为每个任务创建单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也是指针的引用)

4.1.2 分支的好处

  • 优点1:并行推进多个功能开发,提高开发效率。
  • 优点2:各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。

命令

作用

git branch -v

查看分支(

git branch 分支名

创建分支(

修改分支(

git checkout 分支名

切换分支

git merge 分支名

合并分支(把指定的分支合并到当前分支上)

4.2 查看分支(查)

基本语法

  • git branch -v

案例实操

  • *代表当前所使用的分支

4.3 创建分支(增)

基本语法

  • git branch 分支名

案例实操

  • Step1:创建分支hot-fix

  • Step2:查看分支(当前处于master分支上)

4.4 切换分支

基本语法

  • git checkout 分支名

案例实操

  • Step1:切换分支

  • Step2:查看分支(当前处于hot-fix分支上)

  • Step3:验证指针的指向(查看配置文件)

4.5 修改分支(改)

  • Step1:修改hot-fix分支上的文件
    • 第一行:10个2修改为5个2
    • 第二行:10个3修改为5个3

  • Step2:查看本地库状态

  • Step3:添加到暂存区、提交到本地库

  • Step4:查看历史版本

4.6 合并分支(正常合并)

正常合并

  • master分支不做修改,hot-fix分支做了修改
  • 在master分支上合并hot-fix分支

基本语法

  • git merge 分支名

案例实操

要求:在master分支上合并hot-fix分支

  • Step1:切换分支(将当前分支切换回master分支)

  • Step2:合并分支

4.7 合并分支(冲突合并)

冲突合并

  • master分支和hot-fix分支同时做了修改
  • 在master分支上合并hot-fix分支

4.7.1 产生冲突的表现

  • Step1:修改master分支 → 添加到暂存区 → 提交到本地库

  • Step2:从master切换到hot-fix分支

  • Step3:修改hot-fix分支 → 添加到暂存区 → 提交到本地库

  • Step4:从hot-fix分支切换到master分支

  • Step5:在master分支上合并hot-fix分支
    • 冲突(内容):在 hello.txt 中发生合并冲突
    • 自动合并失败;解决冲突,然后提交结果。
    • 产生冲突的表现:后面状态为MERGING(正在合并中,表明还未合并完成)

4.7.2 产生冲突的原因

        合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git 无法替我们决定使用哪一个。必须人为决定新代码内容。

4.7.3 解决冲突的办法

  • Step6:编辑有冲突的文件,删除特殊符号(见下),决定要使用的内容

<<<<<<< HEAD

当前分支的代码

=======

合并过来的代码

>>>>>>> hot-fix

  • Step7:添加到暂存区

  • Step8:提交到本地库
    • 1:此时使用git commit命令时不能带文件名,否则会报错

  • 2:在master分支上合并hot-fix分支,只会对master分支产生影响,而hot-fix分支不受影响。

小结

  • 三本质:
    • 分支(masterhot-fix)的本质就是指向具体版本记录的指针
    • 创建分支的本质就是多创建一个指针
    • 切换分支的本质就是移动 HEAD 指针
  • 当前所在的分支是由HEAD指针决定的,比如:
    • 如果HEAD指向master,那么我们现在就在 master 分支上。
    • 如果HEAD执行hot-fix,那么我们现在就在 hot-fix 分支上。

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

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

相关文章

CGAL最小生成树、可视化

CGAL 5.4.5 - Surface Mesh: User Manual 1、Kruskal计算最小生成树 #include <CGAL/Simple_cartesian.h> #include <CGAL/Surface_mesh.h> #include <boost/graph/kruskal_min_spanning_tree.hpp> #include <iostream> #include <fstream> #inc…

贝塞尔曲线(Bezier Curve)原理、公式推导及matlab代码实现

目录 参考链接 定义 直观理解 公式推导 一次贝塞尔曲线&#xff08;线性公式&#xff09; 二次贝塞尔曲线&#xff08;二次方公式&#xff09; 三次贝塞尔曲线&#xff08;三次方公式&#xff09; n次贝塞尔曲线&#xff08;一般参数公式&#xff09; 代码实现 参考链接…

群晖NAS搭建WebDav结合内网穿透实现公网访问本地影视资源

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

2024华数杯国际数学建模B题思路+代码+模型+论文

2024华数杯国际数学建模B题思路代码模型论文&#xff1a;1.17上午第一时间更新&#xff0c;详细内容见文末名片 问题B&#xff1a;光伏电 背景 中国的电力构成包括传统的能源发电&#xff08;如煤炭、石油和天然气&#xff09;、可再生能源发电 &#xff08;如水力发电、风能…

OpenGL:关于纹理映射时任意四边形中的插值问题(二)

OpenGL&#xff1a;关于纹理映射时任意四边形中的插值问题-CSDN博客 上次是使用逆双线性插值的方法解决四边形纹理映射时产生的折痕问题。 其实也有点问题&#xff0c;就是双线性插值会使得纹理产生一点扭曲。 不是投影的效果。 想达到纹理投影的效果&#xff0c;可以使用透…

AndroidStudio下载安装教程

下载链接&#xff1a;官方下载 https://developer.android.google.cn/studio?hlzh-cn点击后弹出条款及条件页面&#xff0c;往下滑&#xff0c;勾选同意&#xff0c;然后就点击下载&#xff0c;等待下载完成 下载完成后双击打开&#xff0c;Next 继续Next 选择安装路径&am…

行列转化【附加面试题】

在MySQL中&#xff0c;行列转换是一种常见的操作。它包括行转列和列转行两种情况。 行转列&#xff1a;行转列是将表中的某些行转换成列&#xff0c;以提供更为清晰、易读的数据视图。例如&#xff0c;假设我们有一个包含科目和分数的表&#xff0c;我们可以使用SUM和CASE语句…

C++(13)——string

上篇文章中介绍了中部分函数的用法&#xff0c;本篇文章将继续对其他的函数进行介绍&#xff1a; 1. substr: string substr (size_t pos 0, size_t len npos) const; 函数的两个参数如上述代码所示&#xff0c;此函数的主要作用是根据一个已有的的对象的起始坐标开始&a…

基于python集成学习算法XGBoost农业数据可视化分析预测系统

文章目录 基于python集成学习算法XGBoost农业数据可视化分析预测系统一、项目简介二、开发环境三、项目技术四、功能结构五、功能实现模型构建封装类用于网格调参训练模型系统可视化数据请求接口模型评分 0.5*mse 六、系统实现七、总结 基于python集成学习算法XGBoost农业数据可…

我终于学会的前端技能——代码调试、打断点

在技术的世界里&#xff0c;要用魔法来打败魔法 说来惭愧我做前端已近三年了竟然还没有学会如何调试代码&#xff0c;也就是给自己的代码打上断点一步步看它的运行状态以达到理清代码运行逻辑、排查问题提升开发效率的目的。直到最近我才学会了这一技能&#xff0c;在这之前我…

JSP简单学习

jsp是在html中嵌入java代码 jsp也是在j2ee服务端中的java组件 第一次运行 在第一次运行jsp代码时会经历以下步骤&#xff0c;将jsp转为java代码&#xff0c;将java代码转为class文件。 所以通常会比较慢&#xff0c;编译后就好多了。 四大作用域 requestsessionpageapplica…

CUDA Toolkit 下载,安装,验证

CUDA Toolkit 下载 进cuda官网下载 CUDA Toolkit链接&#xff1a; https://developer.nvidia.com/cuda-downloads 官网默认显示当前的最新版本&#xff0c;这里以安装CUDA Toolkit 12.2 为示例 下载CUDA Toolkit 完成 CUDA Toolkit 安装 开始安装&#xff1a; 点同意&#…

Linux第30步_通过USB OTG将固件烧写到eMMC中

学习目的&#xff1a;在Win11中&#xff0c;使用STM32CubeProgrammer工具&#xff0c;通过USB OTG将固件烧写到eMMC中。 安装软件检查&#xff1a; 1、是否安装了JAVA; 2、是否安装了STM32CubeProgrammer工具; 3、是否安装 了DFU驱动程序; 4、是否安装了“Notepad”软件; …

关于SpringBoot项目整合Log4j2实现自定义日志打印失效原因

主要的原因是因为&#xff0c;SpringBoot的logback包的存在&#xff0c;会导致Spring Boot项目优先实现logback的日志设置&#xff0c;所以导致我们用Log4j2实现自定义日志失效。 先找l哪个包引用了logback包 进入之后查询logback 然后双击包 发现是spring-boot-starter-loggin…

python - 等值线(contour)数值添加白色背景边框

python - 等值线(contour)数值添加白色背景边框 如下图所示&#xff0c;图为NCL官网实力的等值线绘图。可以观察到&#xff0c;图中每条等值线都带有一个白色的矩形边框&#xff0c;使其在黑色的等值线更加清晰明了&#xff0c;更具有可读性。但是&#xff0c;目前我还是用pyt…

基于LDA的评论大数据的分析及主题建模

1.微博的关键词大数据采集&#xff1b; 已完成&#xff0c;待优化 2.LDA 错误1&#xff1a;使用了import pyLDAvis.sklearn&#xff0c;提示没有模块no module named pyldavis.sklearn。 默认安装 pyLDAvis3.4.1&#xff0c;最后降级处理&#xff0c;解决方式&#xff1a; …

云渲染是不是不吃电脑配置?对本地电脑要求高吗?

本地电脑渲染吃力&#xff0c;项目又急着要&#xff0c;没有用过的朋友会搜索&#xff1a; 云渲染对电脑配置要求高不高&#xff1f; 它的答案是&#xff1a;不了你是渲染动画还是效果图&#xff0c;都不吃电脑配置&#xff0c;只要你本地电脑能够做图&#xff0c;能够把项目的…

分析Unity崩溃日志(Android)

Unity版本&#xff1a; 这里Unity版本是Unity 2019.4.30f1 崩溃信息&#xff1a; 错误信息如下&#xff1a; Exception Appversion: versionName 1.0.1 versionCode 1 Process: sg.atla.f.c PID: 22716 UID: 10749 Flags: 0x3088be44 Package: sg.atla.f.c v1 (1.0.1) Fo…

如何判断光模块失效以及光模块应用注意点

1.测试光功率是否在指标要求范围之内&#xff0c;如果出现无光或者光功率小的现象&#xff0c;处理方法: A、检查光功率选择的波长和测量单位 (dbm)。 B、清洁光纤连接器端面&#xff0c;光模块光口。 C、检查光纤连接器端面是否发黑和划伤&#xff0c;光纤连接器是否存在折断&…

HTTP超详细介绍

HTTP讲解 1.HTTP的介绍2.HTTP协议的特点3.HTTP工作原理4.HTTP三点注意事项5.HTTP消息结构6.客户端请求消息7.服务端响应消息8.HTTP请求方法9.HTTP 响应头信息10.HTTP 状态码&#xff08;HTTP Status Code&#xff09;10.1.下面是常见的HTTP状态码10.2.HTTP状态码分类10.3.HTTP状…