Git 笔记一 Git简介

git 笔记一

什么是版本控制

  所谓版本控制就是记录对文件的修改记录,这样以后就能回退到需要的 版本。比如你对一段代码进行了几次修改,有几次修改不想要了,如果 使用了版本控制,就可以回退到未做这些修改之前。这在项目管理中非常重要,利用版本控制,我们不仅可以回退到某次修改,而且可以根据记录知道是谁做了那些修改,以便在程序出现问题是,定位到是谁的修改导致的。

  

版本控制系统分类

  本地版本控制系统(LVCS)、集中式版本控制系统(CVCS)、分布式版本控制系统(DVCS)。LVCS在本地保存更改记录,没有什么协作能力,CVCS则由一台中心服务器保存更改记录,本地只保留有原始文件,这样有一个缺陷就是中心服务器如果挂掉影响会很大,而且必须联网才能协作。而DVCS与CVCS的不同在于,客户机上每次check out的时候都是保留的是一个完整的镜像,就算中心服务器挂掉,也可以在本地工作,并且任意一台客户机都能够恢复中心服务器的数据,尽管也有可能会损失一些最新的修改。目前使用比较广泛的Git就是一种分布式版本控制系统。

Git 基础

  1. Git保存的是文件的快照而不是文件的差异

      很多版本控制系统保存的都是每次修改后的差异,通过差异与源文件一起恢复到某个版本。如下图所示:

    Git 笔记一 Git简介

    而Git保存的是完整的文件快照(snapshot),这一点使得Git与其他版本控制系统有本质区别,使得Git的回退,分支等操作几乎没有任何代价。

    Git 笔记一 Git简介
  2. 几乎所有的操作都是本地的

      除了最终将修改合并进入远程版本库,其他几乎所有的操作都是在本地完成的,这一点也依赖于本地Git几乎就是远程版本的一个镜像,因此本地可以完成所有的操作,而不需要去请求远程。
  3. Git的三个状态

      Git管理的文件具有三个主要状态:Commit,Stage和modified。commit是指已经将修改提交到了版本控制数据库,stage是指将一个文件标记为这个版本,并在下一次commit时提交。modified则是指文件已经修改,但是还没有commit到数据库。这三种状态又使得Git具有三个工作区:

    Git 笔记一 Git简介

    一个典型的工作流程就是在working directory中某些文件做了修改,然后提交到staging area,最后提交到git directory,这时就形成了一版本。
上一篇:springAOP实现操作日志记录,并记录请求参数与编辑前后字段的具体改变


下一篇:项目管理---git----快速使用git笔记(二)------git的本地安装