Git 第四章 -- Git分支操作
Posted Z && Y
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git 第四章 -- Git分支操作相关的知识,希望对你有一定的参考价值。
1. Git分支操作
1.1 什么是分支
在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也是指针的引用)
1.2 分支的好处
- 同时并行推进多个功能开发,提高开发效率。
- 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。
1.3 分支的操作
1.3.1 查看分支
1)基本语法:
git branch -v
2 ) 案例实操:
在项目目录打开git命令行,执行:git branch -v
发现当前只有一个主分支
1.3.2 创建一个hot-fix(热修分支)
1)基本语法:
git branch 分支名
2)案例实操:
在项目目录打开git命令行,执行:git branch hot-fix
3)再次查看分支:
1.3.3 切换分支
1)基本语法:
git checkout 分支名
2)案例实操:
1.3.4 在分支上面修改文件并提交到本地仓库
刚刚已经切换到了hot-fix分支,现在我们在hot-fix分支上面修改文件并且推送到本地仓库
-
编辑文件
-
查看本地仓库状态
-
推送到暂存区
-
推送到本地仓库
-
查看历史版本
1.3.5 合并分支(没有冲突)
1)基本语法:
git merge 分支名
2)案例实操 在 master 分支上合并 hot-fix 分支:
- 我们切换到主分支
- 查看hello.txt文件
- 在 master 分支上合并 hot-fix 分支
- 再次查看hello.txt文件
1.3.6 合并分支(有冲突)
冲突产生的表现:后面状态为 MERGING
冲突产生的原因:
案例演示:
-
修改master分支的hello.txt
-
把hello.txt推送到暂存区
-
把hello.txt推送到本地仓库
-
切换到hot-fix分支
-
修改hot-fix分支的hello.txt
-
把hello.txt推送到暂存区
-
把hello.txt推送到本地仓库
-
切换到主分支
-
主分支合并hot-fix分支
-
手动打开hello.txt文件
下面圈起来的地方就是有合并冲突的地方
-
手动解决合并冲突
需要删去这些特殊符号
- 把修改好合并冲突的文件添加到暂存区
- 提交到本地仓库(注意:此时使用 git commit 命令时不能带文件名)
- 查看
合并完成
1.4 创建分支和切换分支图解
Git 切换版本,底层其实是移动的 HEAD 指针,具体原理如下图所示。
- master、hot-fix 其实都是指向具体版本记录的指针。当前所在的分支,其实是由 HEAD决定的。所以创建分支的本质就是多创建一个指针。
- HEAD 如果指向 master,那么我们现在就在 master 分支上。
- HEAD 如果执行 hotfix,那么我们现在就在 hotfix 分支上。
- 所以切换分支的本质就是移动 HEAD 指针。
以上是关于Git 第四章 -- Git分支操作的主要内容,如果未能解决你的问题,请参考以下文章
GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段