最简单易懂的git介绍

什么是git

git是在我们写代码的时候帮我们进行代码版本管理的工具。他是一种非常高效的方式,避免了我们人工的每次对自己缩写的代码版本进行更改,现在有很多的软件本身就自带了版本管理功能。
git是一个程序,也可以说是一个软件,但是git不会像正常的软件一样启动,他需要在终端用命令行的方式输入git的相关命令来进行操作。

git是怎么进行版本控制的

我们可以把文件夹想象成是一个文件展示台,在这个文件展示台下有一个后台,git在这个后台帮我们对这个代码文件版本进行管理。git决定了在这个展示台上该显示什么版本的文件。而在这个后台有一个专门负责档案管理的管理员(暂且叫他master

先在文件夹里新建一个文本文件, 这个文件编辑好之后保存,这个文件就是第一个版本。文件的存档分为两步:
第一步,先告诉git要对哪些文件进行存档。在git里有一个暂存区,当你要对某些修改过的文件进行存档,需要先将这些文件添加到暂存区。master会自动把暂存区的文件变化记录到存档中。
然后, 在第二次修改这个文件的时候,master会再次存档,这样存档记录调就会有两条记录,文件中显示的内容是最新版本的文件内容。

当你有了多个存档记录的时候,就可以通过git在记录档案之间来回切换。文件中的显示内容就会显示当前所选版本的内容。
这些就是git中对文件的读档和存档操作。

git的分支

1.分支的使用

分支是git中一个非常重要的概念,英文名是branch。当你对一个文件夹进行初始化的时候,就自动对这个文件夹创建了一个分支。可以把每一个分支理解为一个档案管理员。之前的每一次读档和存档的操作都是在master的分支当中。
在一开始,git会自动给你创建一个名叫master的管理员分支,当你在master分支下创建一个新的分支,比如说叫fixbug,可以理解为git帮你分配了一个新档案管理的管理员。git会将master管理员的档案记录条上最新的存档记录作为fixbug一开始工作的档案记录条的初始记录。(每次工作时只能选择一个档案管理员)

在这里插入图片描述

需要使用那个管理员,就需要先切换到对应的分支。例如,我现在要使用fixbug管理员,我需要先切换到fixbug分支中。如下图:

在这里插入图片描述

然后我把这个文件的名字改为分支二,然后记录存档。如下图:
在这里插入图片描述
接着我把分支切换回分支master,会发现这个文档的名称又变回了原来的名字。如下图:
在这里插入图片描述
当我再切换回fixbug的分支的时候,文件的名字就又变回了分支二

2.分支的特点

1. 在新的分支中,同样可以对文件进行读档和存档,每个分支使用的都是各自的档案记录条,相互不冲突。上一个分支的最后一个记录作为下一个分支开始的记录。
2. 在git中,不仅在分支中可以切换不同的存档记录,而且分支之间也可以相互切换。当你切换分支的时候,文件夹中的文件信息就是切换到的分支下最后一次存档的状态。
3. 在分支中修改文件内容的时候,不会影响之前或者其余的分支,分支和分支之间是独立的。
4. 分支是可以随意创建的。也可以合并分支。

分支举例

比如我要用git开发我自己的个人网站,我会把网站的初始文件都放到一个文件夹中,然后用git进行初始化。 这样git就默认给我分配了一个master 的分支。先将初始化的文件在master分支存档。如下图:
在这里插入图片描述

然后自己新建一个develop 分支,master分支专门用来管理可发布代码的版本,而主要的开发工作在develop分支进行。(前提是切换到develop分支)

在这里插入图片描述

在开发过程中,每次开发完一个功能都进行一次存档。开发完之后,假设网站可以暂时上线了,那么就需要将develop分支合并到master分支上。切换回master分支,然后把develop分支合并到master分支上。(注意: master上合并只是将develop分支最后一个最新的存档记录复制到了master分支的最后一个存档记录上,因此develop分支仍然存在。)

在这里插入图片描述

这样,master分支上就有最新的代码,就可以发布上线了。由于develop分支仍然存在,可以继续在该分支上接着开发网站的其他功能。

假设在这个时候发现网站上有一个bug,这个时候就需要在master分支下新建一个bugfix 分支,切换到bugfix分支对bug进行修改。修改完之后提交并进行存档。

在这里插入图片描述

接着切换回master分支,再把bugfix分支合并过来,就完成了对bug的修复。然后还要将master分支的代码合并到develop分支上,这样可以把develop分支上存在的bug也修复了。

依次重复。

分支的优点

使用分支可以让各个业务的代码保持独立,不同的代码处理需求可以同步进行,避免了相互影响。完成之后可以再合并到专门用来发布代码的分支中。分支内部的存档、读档、创建、切换、合并等功能就是git实现代码版本管理的核心。

文章资料参考:YouTube 学习呀三木git介绍

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值