首页 > 其他分享 >笔记四:git分支

笔记四:git分支

时间:2023-03-11 20:44:07浏览次数:48  
标签:git fix 笔记 hot master commit 分支

一:学习内容

  • git分支特性
  • git分支操作-查看分支
  • git分支操作-创建分支
  • git分支操作-切换和修改分支
  • git分支操作-分支合并
  • git分支操作-代码合并冲突解决

 

二:git分支特性

1.什么是分支?

在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。

使用分支,程序员就可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。

可以简单理解为分支即为副本,一个分支就是一个单独的副本(分支的底层其实也是指针的引用)。

 

master、hot-fix等分支其实都是指向具体版本记录的指针。当前所在的分支,其实是由HEAD决定的,所以创建分支的本质就是多创建一个指针。【head如何指向master,那么我们现在就在master分支上,head如果指向hot-fix,那么我们现在就在hot-fix分支上。】所以切换分支的本质就是移动HEAD指针。

 

2.分支的好处

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

 

三:git分支操作

1.命令汇总

1 git branch 分支名:创建分支
2 git branch -v:查看分支
3 git checkout 分支名:切换分支
4 git merge 分支名:把指定的分支合并到当前分支上

 

2.查看分支

1 #查看分支
2 git branch -v

命令执行结果如下:

 

3.创建分支

1 #创建一个分支,名为hot-fix,它会自动拷贝master分支指针当前指向的版本的内容
2 git branch hot-fix
3 
4 #再次查看分支,此时发现有2个分支了
5 git branch -v

命令执行结果如下:

 

4.切换和修改分支

 1 #当前在master分支上,修改hot-fix分支内容,则需要切换分支
 2 git checkout hot-fix
 3 
 4 #再次查看分支,此时发现*号指向了hot-fix,说明分支已经切换到hot-fix分支上了
 5 git branch -v
 6 
 7 #修改hot-fix分支上的内容
 8 vim hello.txt
 9 git status
10 git add hello.txt
11 git commit -m "hot-fix first commit" hello.txt
12 
13 #在hot-fix分支上查看版本精简信息
14 git reflog

命令执行结果如下:

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

 

修改hot-fix分支上的内容并提交本地库:

 

查看hot-fix分支上版本精简信息:下方截图从最后一行往上读便是版本经历过程
①8b94833 HEAD@{7}: commit (initial): first commit:在master分支上,第一次提交,版本号为8b94833
②dbb4e24 HEAD@{6}: commit: second commit:在master分支上,第二次提交,版本号为dbb4e24
③f5ad1d9 (master) HEAD@{5}: commit: third commit:在master分支上,第三次提交,版本号为f5ad1d9

④dbb4e24 HEAD@{4}: reset: moving to dbb4e24:在master分支上,从第三次版本穿梭到第二次版本
⑤8b94833 HEAD@{3}: reset: moving to 8b94833:在master分支上,从第二次版本穿梭到第一次版本
⑥f5ad1d9 (master) HEAD@{2}: reset: moving to f5ad1d9:在master分支上,从第一次版本穿梭到第三次版本

⑦f5ad1d9 (master) HEAD@{1}: checkout: moving from master to hot-fix:从master分支切换到hot-fix分支

⑧d33c235 (HEAD -> hot-fix) HEAD@{0}: commit: hot-fix first commit:在hot-fix分支上,第一次提交,版本号为d33c235

 

5.合并分支-正常合并

1 #将hot-fix分支上的当前指针指向的版本,合并到master分支上
2 #首先需要切换到master分支上
3 git checkout master
4 
5 #然后合并分支
6 git merge hot-fix

命令执行结果如下

从hot-fix分支切换到master分支上:

合并分支:

 

标签:git,fix,笔记,hot,master,commit,分支
From: https://www.cnblogs.com/miaomiaokaixin/p/17206891.html

相关文章

  • 笔记三:git常用命令
    一:学习内容1、设置用户签名:gitconfig--globaluser.name用户名gitconfig--globaluser.email邮箱2、操作本地库:初始化本地库:gi......
  • 笔记二:git安装
    一:学习内容git安装步骤详解 二:git下载-基于官网发布最新版本1.git下载官方网址【如果这个慢就用2】:https://git-scm.com/download/win2.git下载镜像网址:https://n......
  • 笔记一:git简介
    一:学习内容git是什么git版本控制(重点:分布式版本控制工具VS集中式版本控制工具)git工作机制git和代码托管中心 二:git是什么git是一个免费的、开源的分布式版本控......
  • 【Git】git常用命令集合
    目录​​最常用的git命令​​​​git拉取代码​​​​git本地如何合并分支​​​​上传文件识别大小写​​​​开发分支(dev)上的代码达到上线的标准后,要合并到master分支​​......
  • web测试+测试工具+用例 笔记
    测试工具:傅立叶:管理UI自动化平台,管理用例结构,其中包含用例的路径结构:产品-模块-场景菲尔兹:管理用例计划主干用例和冒烟用例区分:主干:整个项目比较重要的用例。主干......
  • Python 决定迁移到 GitHub
    Python已经决定迁移到GitHub,虽然有人公开说反对迁移到GitHub,但还是有很多人会在一定程度上使用GitHub,而且几位核心的开发者也倾向于选择GitHub。Python在很久之前为了......
  • Gin学习笔记--使用路由组分类处理请求
    在实际的项目开发中,均是模块化开发,同一模块化的功能接口,往往会有相同的接口前缀,比如说用户有不同的注册,登录等注册:http:..localhost:8080/user/register登录:http://loca......
  • MySQL学习笔记-SQL实践1
    SQL实践1借着学校的数据库实验,来对之前学习的SQL语言进行实践和总结。实验环境:macOS13.2(22D49)mysqlVer8.0.32formacos13.0onarm64(Homebrew)DataGrip20......
  • 构建之法 读书笔记(1)
    邹欣老师在这本构建之法中形象生动的描述了软件工程人员在工作中的点点滴滴。他提出软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程。确......
  • gitcode_上传代码成功之后的一些命令
    gitcode上传代码之后的一些命令Gitglobalsetupgitconfig--globaluser.name"小怪兽"gitconfig--globaluser.email"[email protected]"Createanewreposito......