开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 1 天,点击查看活动详情”
前言
大家好,今天我来分享的内容是git的基本概念,主要的资料来源于猴子都懂的git入门(上网搜索即可)。
git的必要性
之前对于git我是非常不屑的,觉得不就是一个上传的平台吗,有什么好学的,不就是push,pull这些命令吗,然后提交commit一下就好,我在学习之前都是这样认为的。但是我看到一个B站视频《因为不会用git,第二天就被公司开除》,这下促成了我学习的动力。所以我就先去了解git。了解之后才知道git是如此的重要。盆友们,像我自己经常做的项目都是单体项目,自己一个人修修改改就可以了,但是一旦涉及到多人对项目的改进我就不知道了。举个例子来说就是如何能使文件回到自己想要的状态,同时网易对方把我的内容覆盖了怎么办。而git就是来解决这个问题的,相对于前面出现的问题,我们自己的解决办法通常是复制一份,这样做的问题是当有大量的修改如何命名以及一些修改冲突的东西要手动一份份文件看嘛?git不一样能把文档的状态作为更新记录保存起来。因此可以把编辑过的文档复原到以前的状态,也可以显示编辑前后的内容差异。在尝试覆盖旧文件时,系统也会发出警告,这样就不会出现别人无意覆盖掉自己的部分。
数据库
相信很多人尽管没有专门学习过git,但是依然知道数据库,数据库就是git能实现上述功能的基石,总而言之就是存储着文件状态的地方(前提是得用正确的命令)。数据库有远程数据库和本地数据库之分。一般来说先提交本地数据库,之后再提交到远程数据库。
# 工作树和索引
对于git管理下的文件,我们操作的目录叫工作树。那是不是我们每次提交的都是工作树呢,当然不是。我们会对要进行修改的文件有个索引,提交的仅仅只是有索引的部分。