第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

这篇具有很好参考价值的文章主要介绍了第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本节涉及Git命令

  • git branch:列出全部分支
  • git branch <name>:创建分支
  • git checkout <name>:切换分支
  • git diff <branch1> <branch2>:对比两个分支
  • git diff --quiet <branch1> <branch2>:对比两个分支是否存在差异,但不显示细节
  • git diff <branch1> <branch2> <filename>:对比两个分支中某个具体文件差异
  • git merge:合并分支
  • git branch -d <name>:删除分支

一:分支管理概述

分支的存在,极大的强化了不同开发者的协作管理,在一个功能的开发过程中,可以在一个单独的分支上完成,这样不影响主分支的开发,待功能完成后再将分支的内容合并到主分支

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

使用git branch命令可列出所有已经存在的分支,其中标有*表示这是当前工作分支,默认状态下只有一条主分支master

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

每次提交到分支,Git都会把它们传成一条时间线,这条时间线就是一个分支。master或其它分支名本质是一个指针,它们指向的是该分支上最新的提交,然后我们会用前面所介绍的HEAD指针指向master或其它分支名

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

如上图,在我们之前的工作中,一直都在master分支上进行,因此每次提交,master分支都会向前移动一步。当我们创建一个新的分支时,假如名字叫做dev,Git就会新建一个指针dev,指向master上相同的提交,当我们切换分支时,再把HEAD指向dev即可

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

从现在开始,对工作区的修改和提交就都是针对dev分支了。例如新提交一次后,dev指针向前移动一步,而master指针不变

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

假如我们在dev上的工作完成了,就可以把dev合并到master上,直接让master指向dev即可

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

合并完成后,也可以删除dev分支

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

二:相关基本操作

(1)查看分支

作用:使用git branch命令可以查看目前存在的分支,其中当前所在的分支会用*标记

例子

如下,可以发现,目前仅仅存在mater这一条分支

  • 从项目创建之初,有且唯一的分支就是主分支,主分支被叫做 master。git 的 master 分支并不是一个特殊分支,它就跟其它分支完全没有区别。之所以几乎每一个仓库都有 master 分支,是因为 git init 命令默认创建

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

(2)创建分支

作用:使用git branch <name>可以创建一条名为<name>的分支。在一般项目开发中,会创建以下几种类型的分支

  • 主分支(master:主分支是代码库的主要分支,通常用于发布稳定版本的代码。开发人员在主分支上提交的代码需要经过严格的测试和审核,确保代码的质量和稳定性。
  • 开发分支(develop:开发分支是用于日常开发的分支,通常从主分支分离出来。在开发分支上进行的所有工作都会集成到该分支上,直到该分支的功能完成并准备好发布稳定版本。
  • 功能分支(feature:功能分支是从开发分支分离出来的分支,用于开发特定的功能。在功能分支上进行的所有工作都与该功能相关,开发人员可以在该分支上独立开发,并在功能完成后将该分支合并到开发分支上。
  • 补丁分支(hotfix:补丁分支是用于修复已发布版本中出现的问题的分支,通常从主分支上分离出来。在补丁分支上进行的所有工作都是针对该版本的修复工作,修复完成后,将该分支合并回主分支和开发分支上。
  • 发布分支(release:发布分支是用于准备发布版本的分支,通常从开发分支分离出来。在发布分支上进行的工作包括准备发布版本所需的文档、测试、打标签等,一旦发布完成,该分支会被合并到主分支和开发分支上

例子

如下创建两条分支,分别用于开发和bug修复,名称分别为devbugfix

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

(3)切换分支

作用:使用git checkout <name>可进行分支之间的切换

例子

如下,我们将目前所在分支切换到dev

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

现在,在该分支上建立一个文件BranchTest.txt,在写入一些内容后提交

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

然后我们再次切换回主分支,你会发现刚才生成的BranchTest.txt不存在了
第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

(4)分支对比

作用:使用git diff命令对两个分支进行差异对比,常用用法如下

git diff <branch1> <branch2> # 对比两个分支
git diff --quiet <branch1> <branch2> # 对比两个分支是否存在差异,但不显示细节
git diff <branch1> <branch2> <filename> # 对比两个分支中某个具体文件差异

例子

如下
第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

(5)合并分支

A:合并分支

作用:使用git merge可以将两个分支进行合并

例子

如下,目前我们在master分支上,现在我们将dev分支上所做的更改合并至master分支

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

B:冲突合并

当Git尝试将两个分支合并时,如果两个分支都对同一个文件的相同部分进行了修改,就会发生冲突。在这种情况下,Git无法确定哪个更改是正确的,因此需要手动解决冲突

  • 将两个分支的文件,进行对比修改,满足两个分支的提交
  • 使用 git addgit commit 进行一次新的提交。(此时提交的是master分支)
  • 再次合并

例子

如下,切换回dev分支,这次我们对Hello.py文件进行修改

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

然后切换回master分支也对Hello.py文件进行修改,插入与之不同的内容

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

现在尝试合并,可以发现Git报错

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

其含义是需要我们手动处理冲突,使用git diff也可以查看到两个分支上文件的差异

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

现在,我们将master分支上的这个Hello.py文件最后一行删除

第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)

再次合并即可

(6)删除分支

**作用:使用git branch -d <name>**可将分支删除

例子
第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)文章来源地址https://www.toymoban.com/news/detail-401308.html

到了这里,关于第三节:Git分支管理(关键词:git branch、git checkout、git diff、git merge、查看、创建、切换、对比分支)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • GPT关键词挖掘,自动关键词文章生成

    随着互联网的发展,内容营销已成为企业营销策略中不可或缺的一环。有效的文章生成可以帮助企业吸引更多的潜在客户,提高品牌曝光度和转化率,从而实现营销目标。 文章生成是指根据特定的和主题,使用软件工具自动生成相关的文章内容。与传统的

    2024年02月01日
    浏览(40)
  • 实现同时查找多个关键词——KeywordCrafter - 关键词匠心

    具体功能:同时查找多个,高亮加粗显示,并显示出现次数。 🧐碎碎念:最近在写文案的时候,总是要避免出现一个敏感词汇,利用 (command+F) or (Ctr+F) 查找,只能一个一个单词去查,很麻烦。🤷‍♂️ 所以我写了一个简单的网页,在文本框输入一整篇文章,在

    2024年02月13日
    浏览(52)
  • 长尾关键词挖掘软件-免费的百度搜索关键词挖掘

    嗨,大家好!今天,我想和大家聊一聊长尾挖掘工具。作为一个在网络世界里摸爬滚打多年的人,我对这个话题有着一些个人的感悟和见解,希望能与大家分享。 首先,让我坦白一点,长尾挖掘工具对于我来说真是救命稻草。在我刚开始做网站优化和内容创作的

    2024年02月09日
    浏览(74)
  • 关键词生成器在线-在线免费关键词生成器

    生成,什么是生成,生成就是根据你输入的一个生成成千上百的核心,围绕着你输入的核心词来生成的,优先生成大量用户搜索的,今天就给大家分享一款免费生成工具,生成的来源主要是用户都在搜索的词,相关搜索的

    2024年02月04日
    浏览(122)
  • 网站SEO关键词规划时如何筛选出合适的关键词?

    在网站SEO优化过程中,布局是一个至关重要的环节。首先,我们需要确定核心,然后通过各种策略和方法对进行扩展。完成扩展后,接下来的任务就是对这些扩展后的进行筛选。那么,如何进行有效的筛选呢?我们通常建议选择那些具有

    2024年04月17日
    浏览(63)
  • 关键词提取 | 基于Textrank算法的两种关键词提取

    目录 一、PageRank算法 二、TextRank算法 1. 抽取(keyword extraction) 2. 关键短语抽取(keyphrase extration) 3. 关键句抽取(sentence extraction) 三、TextRank算法实现 1. 基于Textrank4zh的TextRank算法实现 2. 基于jieba的TextRank算法实现 3. 基于SnowNLP的TextRank算法实现 四、PageRank算法与Text

    2024年04月14日
    浏览(66)
  • Stable Diffusion 告别猜关键词,LoRA适配关键词自动生成

    有没有想想过在SD绘图的时候下载好的LoRA模型选择之后不生效是为什么?或者说不知道怎么填写? 这里介绍基于 Civitai 的LoRA 使用方法。 如果没有安装的小伙伴可以参考前面的文章先对 Civitai 的模型管理进行安装和使用,确保你的SD主页已经出现了 Civitai 助手 选项卡。

    2024年02月09日
    浏览(50)
  • 一个AI关键词能卖500块?AI绘画引发研究关键词的商机

    一个AI能卖500块?AI绘画引发研究的商机! 绘画一直被人们看作是视觉艺术的呈现方式。通常情况下,学习绘画需要理解调色、构图和线条等要素。然而,自从AI介入绘画领域后,绘画的\\\"画风\\\"迅速发生了变化。网络上涌现出许多教程,教人如何学习AI绘画的关键

    2024年02月10日
    浏览(42)
  • 长尾词和关键词的区别,长尾关键词最简单最常用的2个​获取方法

        要知道长尾词与的区别就要先了解什么是,什么是长尾词。      什么是呢?     是定义您的内容的想法和主题。     什么是长尾词呢?     长尾词是与相关的,可以带来搜索流量的组合型。     获取长尾的最简单的2个方

    2024年02月11日
    浏览(35)
  • 网站万词霸屏推广系统源码:实现关键词推广,轻松提高关键词排名,带完整的安装部署教程

    现如今,互联网的快速发展,网站推广成为企业网络营销的重要手段。而排名作为网站推广的关键因素,一直备受关注。罗峰给大家分享一款网站万词霸屏推广系统源码,该系统可实现推广,有效提高排名,为企业带来更多流量和潜在客户。 以下是部分代

    2024年01月19日
    浏览(69)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包