《五》 Git 中的标签和分支

标签 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 来结束合并并提交。

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

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

相关文章

任务40 评奖系统设计

系列文章 任务40 评奖系统设计 为教务处设计一个学生评价老师的程序&#xff1a; 每位学生投一张票&#xff0c;选出自己最喜爱的老师&#xff0c;选票格式为&#xff1a; | 第一喜爱的老师 | 第二喜爱的老师 |第三喜爱的老师 | | 工号 |工号 |工号 | 上述数据存放在一个数据…

随机网络构建

随机网络构建 文章目录 随机网络构建[toc]1 随机网络定义2 网络拓扑性质2.1 边数分布2.2 度分布 3 代码实现 1 随机网络定义 随机网络与规则网络相对应&#xff0c;最为经典的随机网络模型是Erds和Rnyi研究的ER随机图模型&#xff0c;ER随机图模型有两种定义方式&#xff1a; …

三种快速转换PDF为TXT的方法:简单、高效、免费

如何将PDF转换为TXT文件&#xff1f;在日常生活中&#xff0c;PDF和TXT是常见的文本格式。PDF格式文件具有稳定的布局和易于存储的特点。然而&#xff0c;许多在线下载的电子书通常是以PDF格式提供的&#xff0c;而电子阅读器通常不支持PDF格式&#xff0c;这就导致了无法方便地…

字节软测划水四年,内容过于真实......

先简单交代一下吧&#xff0c;潇潇是某不知名211的本硕&#xff0c;18年毕业加入一个小厂&#xff0c;之后跳槽到了字节跳动&#xff0c;一直从事测试开发相关的工作。之前没有实习经历&#xff0c;算是四年半的工作经验吧。 这四年半之间他完成了一次晋升&#xff0c;换了一家…

SAP-MM-计算方案字段解析

01、 “步骤”&#xff1a;标识此条件类型在计算方案中的顺序编号&#xff0c;此编号会影响到后续业务中条件类型的排序&#xff0c;不同条件类型之间的编号最好间隔大一些&#xff0c;这样设置便于以后对计算方案进行扩展&#xff1b; 02、 “计数器”&#xff1…

Apache Kafka - 重识消费者

文章目录 概述Kafka消费者的工作原理Kafka消费者的配置Kafka消费者的实现高级API低级API 导图总结 概述 Kafka是一个分布式的消息队列系统&#xff0c;它的出现解决了传统消息队列系统的吞吐量瓶颈问题。 Kafka的高吞吐量、低延迟和可扩展性使得它成为了很多公司的首选消息队…

面试前15天刷完这个笔记,拿下字节测开岗offer....

面试&#xff0c;跳槽&#xff0c;每天都在发生&#xff0c;跳槽&#xff0c;更是很常见的&#xff0c;对于每个人来说&#xff0c;跳槽的意义也各不相同&#xff0c;可能是一个人更向往一个更大的平台&#xff0c;更好的地方&#xff0c;可以通过换一个环境改变自己的现状。而…

解密Java Class文件不为人知的秘密

Java 诞生多年&#xff0c;因此在网络上&#xff0c;有关 Java Class 文件格式解析的文章有很多&#xff0c;但他们大多数都是在列举《Java 虚拟机》中定义的格式&#xff0c;通读下来&#xff0c;好像所有的东西都讲清楚了&#xff0c;但是我个人好像并没有看懂&#xff0c;不…

2. css表格属性、文本属性、列表属性、边距属性、尺寸属性

1. 表格属性 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-width…

【JavaSE】Java基础语法(十五):继承

文章目录 1. 继承的实现2. 继承的好处和弊端3. Java中继承的特点4. 继承中的成员访问特点5. super6. 继承中构造方法的访问特点7. 继承中成员方法的访问特点8. super内存图9. 方法重写10. 权限修饰符 1. 继承的实现 继承的概念 继承是面向对象三大特征之一&#xff0c;可以使得…

【状态估计】基于随机方法优化PMU优化配置(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

路径规划算法:基于猫群优化的路径规划算法- 附代码

路径规划算法&#xff1a;基于猫群优化的路径规划算法- 附代码 文章目录 路径规划算法&#xff1a;基于猫群优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要&#xff1a;本文主要介绍利用智能优化算法猫群…

基于docker部署testlink并集成mantis

使用docker pull命令拉取需要的镜像。由于testlink和mantis都需要存储相关数据&#xff0c;所以这里可以看到还拉取了一个mysql镜像。 # docker pull bitnami/testlink:1.9.16-r8 # docker pull vimagick/mantisbt # docker pull mysql:5.7.20 使用docker network命令中创建…

Altium Designer 相同电路多组复制布线

在进行设计开发的时候&#xff0c;总会遇到相同的电路&#xff0c;或者模块&#xff0c;这些电路可以使用相同的布局和走线。我们可以画好其中一部分&#xff0c;然后直接复制&#xff0c;就可以提高效率。下面记录我自己的实际操作过程&#xff0c;有一些地方遇到了问题&#…

抽象轻松JavaScript

想象一样&#xff0c;现在有一个苹果&#xff0c;两个苹果&#xff0c;一箱苹果在你面前 看&#xff0c;上面的三种苹果&#xff0c;&#xff08;我写的是苹果就是苹果&#xff09; 语境1 例如你现在要搬运苹果&#xff01; 那么现在上面有苹果&#xff0c;一个&#xff0c;两…

大数据好找工作么?前景如何

大数据好不好找工作不是一概而论的&#xff0c;要根据你个人的学历情况&#xff0c;掌握技能程度&#xff0c;所在城市招聘需求&#xff0c;甚至是你的面试能力和简历是否突出优势有关。 但是毋庸置疑的是&#xff0c;大数据目前的发展前景还是相当优秀的。 我们知道&#xf…

每天一个面试题之final在java中有什么作用?

final在java中有什么作用&#xff1f; final关键字表示最终的含义 当它用来修饰一个引用时&#xff1a; <1>:如果引用为基本数据类型&#xff0c;则该引用为常量&#xff0c;该值无法被修改。<2>:如果引用为引用数据类型&#xff0c;例如&#xff0c;对象/数组等…

Java的CookieManager

文章目录 1. 简介2. CookieStore 1. 简介 Java5包括一个抽象类Java.net.CookieHandler&#xff0c;它定义了存储和获取Cookie的一个API&#xff0c;但不包括这个抽象类的实现&#xff0c;所以还有很多工作要做。Java6进一步作了补充&#xff0c;为CookieManager增加了一个可以…

基于信息间隙决策理论的碳捕集电厂调度(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

unity 渲染性能分析工具

目标 既然要优化&#xff0c;肯定要有个目标&#xff1a; pc上一般要求&#xff1a;一秒渲染60帧 移动端&#xff1a;一秒渲染30帧 这应该是最低的要求&#xff0c;如果游戏运行时&#xff0c;游戏帧率有变化&#xff0c;人眼能够明显的感觉到帧率下降。 优化的首要规则是找到…