《五》 Git 中的标签和分支

news2024/11/23 11:18:46

标签 tag:

Git 可以给仓库中某一次 commit 的提交打上标签。对于重大的版本经常会打上一个标签来表示它的重要性。

创建标签:

git tag【tag 名称】:创建标签。

查看标签:

git tag:查看标签。

推送标签到远程仓库:

默认情况下,git push 命令并不会将标签推送到远程仓库中去,必须显式地手动推送。这样,当其他人从远程仓库克隆或者拉取时,也能获取到标签。

  1. git push【远程仓库别名】 【tag 名称】:推送指定的标签。
  2. git push【远程仓库别名】 --tags:推送全部标签。

删除标签:

  1. git tag -d【tag 名称】:删除本地仓库中的标签。
  2. git push 【远程仓库别名】-d【tag 名称】:删除远程仓库中的标签。

检出标签(回退到指定标签的版本):

回退到指定标签的版本后,并不会在当前标签的版本上直接修改内容,因为也并不想舍弃当前标签的版本后面提交的内容。一般情况下,会在当前标签的版本基础上另开一个分支出来修改内容,之后再将分支进行合并即可。

git checkout 【tag 名称】:回退到指定标签的版本。

分支 branch:

在版本控制过程中,使用多条线同时推进多个任务,这就是分支。

使用分支的好处:

  1. 可以同时并行推进多个功能的开发,提供开发效率。
  2. 各个分支之间互不影响,即使某个分支开发失败,也不会其他任何分支有影响。

请添加图片描述

Git 分支管理的本质就是创建和移动指针,创建分支其实就是创建一个新的指针,切换分支其实就是移动指针。

SVN 中创建分支是将目录和文件全部都复制一套出来。

版本库初始化之后,默认会有一条 master 主分支,HEAD 指向 master 分支;如果新建一个 testing 分支,其实就是新建一个指针指向 f30ad 这个版本。
请添加图片描述

查看分支:

使用 git branch 查看分支。

* master // 前面的 * 号表示当前正在这个分支上
创建分支:

使用 git branch hot_fix 创建 hot_fix 分支,然后使用 git branch 查看一下分支。

  hot_fix
* master // 前面的 * 号表示当前正在这个分支上
切换分支:

使用 git checkout hot_fix 切换到 hot_fix 分支上,然后使用 git branch 查看一下分支。

* hot_fix
  master
  1. 如果在 master 分支上修改了 index.txt 文件的内容,但是只在工作区做了修改,并没有 add 到暂存区和提交到本地仓库中,那么如果切换到 hot_fix 分支,index.txt 修改的内容也将被带过去。

修改的内容在哪个分支上提交,将会归属于哪个分支,另一个分支就不会再显示这部分内容了。

  1. 如果在 master 分支上修改了 index.txt 文件的内容,但是只在工作区做了修改和 add 到了暂存区,并没有提交到本地仓库,那么如果想要切换到 hot_fix 分支将会被 Git 阻止。
创建+切换分支:

可以使用 git checkout -b 【分支名】 直接创建并且切换分支。

删除分支:

首先当前所在的分支不能是想要删除的分支,然后使用 git branch -d 【分支名】 即可删除。

合并分支:
  1. 当前正在 hot_fix 分支上,修改 index.txt 文件的内容并提交到本地仓库。
  2. 使用 git checkout master 切换到 master 分支上,然后使用 git merge hot_fix 将 hot_fix 合并到 master 分支上。
    Updating 373446c..b4f6025
    Fast-forward  // 如果顺着一个分支走下去能够到达另一个分支,那么 Git 在合并两者的时候,只会简单地将指针向前推进,这就叫做快进(fast-forward)
     index.txt | 4 +++-
     1 file changed, 3 insertions(+), 1 deletion(-)
    
解决冲突:

如果在两个不同的分支中,对同一个文件的同一个部分进行了不同的修改,那么对这两个分支进行合并时就会产生冲突。

  1. 当前在 master 分支上,对 index.txt 文件的第三行进行修改并提交到本地仓库。
  2. 使用 git checkout hot_fix 切换到 hot_fix 分支上,也对 index.txt 文件的第三行进行修改并提交到本次仓库。
  3. 此时使用 git merge master 将 master 分支合并到 hot_fix 分支上,会出现冲突,终端中显示如下:
    Auto-merging index.txt
    CONFLICT (content): Merge conflict in index.txt
    Automatic merge failed; fix conflicts and then commit the result.
    
    以 VSCode 为例,在 index.txt 文件中显示如下:
    在这里插入图片描述
    删除特殊符号、留下想要的内容来解决冲突。
  4. 此时使用 git status 来查看一下状态:
    On branch hot_fix
    You have unmerged paths.
      (fix conflicts and run "git commit")
      (use "git merge --abort" to abort the merge)
    
    Unmerged paths:
      (use "git add <file>..." to mark resolution) // 使用 git add 来标记冲突的解决
            both modified:   index.txt
    
    no changes added to commit (use "git add" and/or "git commit -a")
    
  5. 使用 git add index.txt 来标记冲突的解决,再次使用 git status 来查看一下状态:
    On branch hot_fix
    All conflicts fixed but you are still merging.
      (use "git commit" to conclude merge) // 使用 git commit 来结束合并
    
    Changes to be committed:
            modified:   index.txt
    
  6. 使用 git commit -m 'resolve conflict 来结束合并并提交。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【计算机视觉 | 目标检测】arxiv 计算机视觉关于目标检测的学术速递(5月30日论文合集)

文章目录 一、检测相关(16篇)1.1 Contextual Object Detection with Multimodal Large Language Models1.2 Towards minimizing efforts for Morphing Attacks -- Deep embeddings for morphing pair selection and improved Morphing Attack Detection1.3 Mining Negative Tem…

Pytorch CIFAR10图像分类 ShuffleNet篇

Pytorch CIFAR10图像分类 ShuffleNet篇 文章目录 Pytorch CIFAR10图像分类 ShuffleNet篇4. 定义网络&#xff08;ShuffleNet&#xff09;Channel Shuffle网络单元 Shuffle UnitShuffleNet 网络结构summary查看网络测试和定义网络 5. 定义损失函数和优化器6. 训练及可视化&#…

「教程」微信小程序获取经纬度查询天气预警信息

使用天气预警API 可以帮助人们及时获取和了解天气预警信息&#xff0c;以便采取相应的措施来保护自身和财产。天气预警通常是由气象部门或相关机构发布的&#xff0c;用于提醒公众可能出现的极端天气或自然灾害&#xff0c;如暴雨、洪水、台风、暴风雪、雷暴、高温、低温、霜冻…

LNMT架构之LNMT与nginx动静分离

LNMT架构之LNMT与nginx动静分离 目录 一、实验前提环境配置 &#xff08;一&#xff09;关闭防火墙&#xff0c;安装本地yum &#xff08;二&#xff09;部署tomcat &#xff08;三&#xff09;部署Mariadb &#xff08;四&#xff09;部署nginx 二、动静分离 步骤一&a…

Django实现接口自动化平台(二)认证授权【持续更新中】

上一章&#xff1a; Django实现接口自动化平台&#xff08;一&#xff09;日志功能【持续更新中】_做测试的喵酱的博客-CSDN博客 下一章&#xff1a; 一、认证与授权配置 1、认证&#xff1a;获取权限的方式 2、授权&#xff1a;通过认证之后&#xff0c;可以获取哪些权限 …

【大数据分析】Hbase的基本原理

目录 Hbase 架构ClientZooKeeperMasterRegionServerHRegionStoreMemStoreStoreFileHFileHLog Hbase数据模型关于数据模型的其他概念Name SpaceTableRowColumnTime StampCell Hbase 架构 Client &#xff08;1&#xff09;.META.表&#xff0c;记录了用户所有表拆分出来的 Regi…

ESP32设备驱动-TMP006 红外热电堆传感器驱动

TMP006 红外热电堆传感器驱动 文章目录 TMP006 红外热电堆传感器驱动1、TMP006介绍2、硬件准备3、软件准备4、驱动实现1、TMP006介绍 Texas Instruments 的 TMP006 是一系列温度传感器中的第一款,无需接触物体即可测量物体的温度。 它使用非常灵敏的热电堆来测量从物体表面发…

怎么给视频配音?视频配音软件有哪些?

视频配音在日常生活中被广泛应用&#xff0c;比如在电影解说、游戏解说、纪录片视频等领域&#xff0c;可以帮助创作者更好地表达自己的视频内容&#xff0c;提高视频的吸引力和感染力。很多小伙伴也想学习怎么给视频配音&#xff0c;但不清楚视频配音教程哪个好&#xff1f;没…

解密服务性能利器:Pyroscope让你的应用飞起来

开发人员通常需要查看生产应用程序中的性能瓶颈以确定问题的原因。为此&#xff0c;您通常需要可以通过日志和代码工具收集的信息。不幸的是&#xff0c;这种方法通常耗时&#xff0c;并且不能提供有关潜在问题的足够详细信息。 一种现代且更先进的方法是应用和使用分析技术和工…

Camunda如何利于性能指标优化流程性能

Camunda 提供了一系列性能指标&#xff0c;以帮助用户评估和优化其业务流程的性能。以下是 Camunda 提供的一些常见性能指标&#xff1a; 1、流程执行时间&#xff08;Process Execution Time&#xff09;&#xff1a;指从流程实例启动到完成的时间。 2、流程实例数&#xff…

共同成长 合力致远,就在2023亚马逊云科技合作伙伴峰会

在云计算蓬勃发展的今天&#xff0c;在推动业务发展、实现共赢的过程中&#xff0c;价值成就&#xff0c;是亚马逊云科技对合作伙伴自始至终的承诺。为助力合作伙伴成就价值&#xff0c;共建成长路径&#xff0c;2023亚马逊云科技合作伙伴峰会将于6月27日在上海世博中心重磅启幕…

好选客浅谈鞋靴行业找外贸客户~

鞋靴概述 鞋靴制品是指使用各种材料&#xff08;如&#xff1a;皮革、布料、橡胶、塑料等&#xff09;制作的款式、类型、功能各异的鞋子和靴子&#xff0c;包括日常通勤的休闲鞋、提供舒适的缓震和支撑的运动鞋与适用于正式场合的皮鞋和高跟鞋等&#xff0c;在保护脚部、提供…

Ubuntu18.04安装Autoware.ai 1.14 GPU版

硬件&#xff1a; CPU&#xff1a;i7-9700 显卡&#xff1a;GTX 1050 Ti 1-安装ROS 2-安装显卡驱动 1-删除旧版显卡驱动 sudo apt-get remove --purge nvidia*2-查看可供安装的驱动 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo apt-get …

期货黄金交易平台哪个最可靠?如何选择?

在期货黄金交易中&#xff0c;期货黄金交易平台是否可靠&#xff1f;如何才能快速筛选出可靠的黄金交易平台&#xff1f;对投资者来说都是很重要的。 期货黄金交易平台要保障用户资金安全 资金的安全性方面要求平台受到严格监管&#xff0c;最好是受多国监管的&#xff0c;这样…

低代码平台产品排行榜揭晓:这些产品值得你选择和使用

低代码平台改变了软件开发的方式。它不需要开发团队从头开始创建应用程序&#xff0c;而是允许用户在几乎没有编码知识的情况下构建自定义应用程序。这些平台为需要定制软件解决方案但没有预算或时间聘请开发团队的企业提供了一种简单且经济高效的解决方案。而在本文中&#xf…

抖音搜索/抖音下拉词/抖音seo/抖音关键词排名系统开发

为了优化抖音平台上的内容&#xff0c;开发抖音关键词排名系统成为了必要的措施。该系统可以针对搜索结果和下拉词进行分析&#xff0c;为用户提供更准确的搜索结果。为实现这一目标&#xff0c;开发团队进行了大量的市场调查和用户研究。 在开发过程中&#xff0c;团队利用了…

【来不及刷题之】32、编辑距离(动态规划)

明确dp函数的&#x1f353;&#x1f497;&#x1f449;定义dp(s1,s2,i,j )&#xff1a;s1[0…i]变成s2[0…j]的最小编辑距离选择&#xff1a;对于每一个位置&#xff0c;s1可以&#xff1a;不做任何操作&#xff08;在相等时&#xff09;&#xff0c;删除&#xff0c;在后一个位…

PMP适合哪些人去考?

从技术向管理转型的工程技术人员&#xff1a;对于那些在职业生涯中转向项目管理的技术人员&#xff0c;PMP证书提供了必要的桥梁&#xff0c;使他们能够掌握项目管理的基本原理和最佳实践。 缺乏系统项目管理理论知识的项目经理&#xff1a;大部分项目经理都是技术出身&#x…

【OneNet】| stm32+esp8266-01s—— OneNet初体验 | 平台注册及设备创建 | demo使用

系列文章目录 失败了也挺可爱&#xff0c;成功了就超帅。 文章目录 前言1. OneNet平台注册2. 创建多协议接入设备3. 硬件连接4. 下载并运行Demo4.1 Demo下载4.2 运行Demo本小节结束 前言 最近准备耍下 Onenet平台 。下载了官方demo 遇到几个问题 1、创建接入设备 因为平台网页…

【LeetCode】5,最长回文子串。 难度等级:中等。解法很多,值得推敲。

文章目录 一、题目二、我的解答&#xff1a;双指针从头开始遍历2.1 暴力循环&#xff1a;超出时间限制2.2 优化后的暴力循环&#xff1a;虽然没有超时&#xff0c;但效率很低 三、双指针中心扩散法&#xff08;从字符串中心开始遍历&#xff09;四、动态规划法4.1 我的错误解答…