Git的概念与使用
说明:目前网上的资料往往都太多繁冗,很难把有些概念直白的说清楚,所以我想通过该文档用明确简练的话语,帮助自己学习总结Git,同时也帮助大家梳理Git的概念与使用。如果内容中有不准确的地方,还请见谅。目前仅写完了Git的概念,后续的话看看什么时候有时间再继续写一下,嘿嘿。
目录
一、Git的概念 🤔
Git是什么?
Git1是主流的分布式版本控制系统。所以它的本质是版本控制系统,同时是分布式 的。
Git官网上的介绍:Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
特点:免费、开源、分布式、版本控制系统。
它最早是由Linux之父Linus用C语言编写的,这里就不赘述Git的诞生过程了,有兴趣的同学可以去查一查相关的资料,这里也推荐廖雪峰老师的官方网站—Git的诞生 - 廖雪峰的官方网站 (liaoxuefeng.com)。
版本控制系统是什么?
既然它的本质是版本控制系统,那我们就先来看看什么是版本控制系统 ?
作为面向百度开发的程序员,从百度中获取到的答案:版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。
简单来说就是用于管理控制软件开发过程中各种文件的系统,以达到在各终端中统一、同步各文件的目的,必要时也可以进行追溯 。
为什么要使用它呢?
举个例子,你要敲一段代码,同事A需要在这段代码上进行调整修改,可能你会发给同事A,他改完之后再发给你,你再找到他改的那一段,看看有没有啥问题。这样的场景确实挺累的,而且反复几次之后除非你有单独另存原始文件,否则很难再回到最初的文件了。当然这只是其中最主要的一部分功能。
分布式是什么?
那么分布式 又是呢?
这里就要讨论一下一组对应关系:集中式与分布式
首先看一下什么是集中式。百度给出的答案:集中式系统是指由一台或多台主计算机组成的中心节点,数据集中存储于这个中心节点中,并且整个系统的所有业务单元都集中部署在这个中心节点上,系统的所有功能均由其集中处理。
其实集中式这个名称就很直观,以一个中心节点,集中处理业务功能或数据存储等。
相对集中式,分布式在百度中的定义:在一个分布式系统中,一组独立的计算机展现给用户的是一个统一的整体,就好像是一个系统似的。系统拥有多种通用的物理和逻辑资源,可以动态的分配任务,分散的物理和逻辑资源通过计算机网络实现信息交换。系统中存在一个以全局的方式管理计算机资源的分布式操作系统。
定义的有些复杂,对于分布式可以理解为各节点都可以进行业务功能的处理或数据的存储,但是可以进行不同的业务功能、存放不同的数据。
再说点个人的感觉:集中式就像是封建集权,有事先上奏。而分布式很多时候的应用场景就像是《明日边缘》中的怪物,每个怪物是独立的个体,但都有统一的认知,都和母体共享同步着思维。
所以Git是什么?
Git是分布式版本控制系统 ,它可以以任何终端作为系统的载体,只要还有一个终端存在,它就不死不灭。当然现实的应用场景中为了方便,我们仍会选用集中式的方式2去使用它,但它本身的价值是非常值得肯定的 。
二、Git的使用
1. Git的安装
待续。。。