美文网首页
版本控制Git

版本控制Git

作者: 建怀 | 来源:发表于2018-09-11 16:39 被阅读0次

版本控制Git

版本控制概念

  版本控制是用于一种记录一个或多个文件内容变化,以便将来查阅特定版本修订情况的系统。实现版本控制的系统有三大类:

  • (1)本地版本控制系统:一开始的思路都是通过数据库来记录文件的历次更新差异,这样达到版本控制的效果。
  • (2)中心化版本控制系统:不同系统上的开发者协同工作,中心化版本控制系统(Centralized Version Control System,CVCS)应运而生。最常见的是CVS,有一个集中管理的服务器,保存所有文件的修订版本,而协同工作的人都通过客户端连接到这台服务器,取出最新的文件或者提交更新。
  • (3)分布式版本控制系统:避免单点故障,分布式版本控制系统(Distributed Version Control System,DVCS)面世了。最常见的就是Git,客户端把代码仓库完整镜像下来,任何一处协同工作用的服务器发生故障,还是可通过任何一个镜像的本地仓库进行恢复。

Git的快照流

  CVS把保存的信息看作是一组基本文件和每个文件随时间逐步累积的差异。Git把数据看作是对小型文件系统的一组快照。Git每次保存项目状态时,主要对当时的全部文件制作一个快照并保存这个快照的索引。

本地执行操作

  Git的绝大多数操作都只需要访问本地文件和资源。断网也能继续开发。

只添加数据

  Git很难出现那种不可逆操作,几乎只往Git数据库中增加数据,而又不是简单增加数据。

完整性校验

  Git中所有数据在存储前都计算校验和,然后以校验和来引用。Git用来计算校验和的算法是SHA-1。Git会将文件的内容和目录结构一通计算出它的哈希,确保文件和路径的完整性。Git数据库中保存的信息都是以文件内容的哈希值来索引,而不是文件名。

工作区和工作状态

  Git有三种状态,你的文件可能处于其中之一:已提交(commited)、已修改(modified)和异暂停(staged)。已提交表示数据已经安全的保存在本地数据库中。已修改表示修改了文件,但还没有保存到数据库中。已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。

  由此引入Git的三个工作区的概念:Git仓库,工作目录以及暂存区域。

  • (1)工作目录:直接编辑修改的目录。
  • (2)Git仓库目录:保存项目的元数据和对象数据库的地方。
  • (3)暂存区域是一个文件,保存下次将提交的文件列表信息,一般在Git仓库目录中。

分支

  Git保存的只是系列文件快照。在Git提交时,会保存一个提交(commit)对象,该对象包含一个指向暂存内容快照的指针,包含本地提交的作者等相关附属信息,普通提交有一个祖先,有两个或多个分支合并产生的提交则有多个祖先。

  Git的分支,其实本质上仅仅是指向commit对象的可变指针。Git会使用master作为分支的默认名字。

相关文章

  • 学习笔记-01

    原视频 版本控制介绍 集中式版本控制 问题:单点故障 分布式版本控制 Git安装 video Git结构 Git和...

  • 01、版本管理-GIT

    一、版本控制 二、版本控制软件 GIT 分布式版本控制系统 SVN 集中式版本控制系统 三、git安装 四、win...

  • 01、版本管理-GIT

    一、版本控制 二、版本控制软件 GIT 分布式版本控制系统 SVN 集中式版本控制系统 三、git安装 四、win...

  • git的及基本使用

    git 版本控制系统(VCS) 本地式版本控制系统 集中式版本控制系统 SVN 分布式版本控制系统 Git g...

  • 关于在项目中使用git的工具选择

    作为版本控制的新秀,git已经成为主流的代码版本控制系统。git不同与svn、cvs等集中版本控制系统。git作为...

  • 2018-09-30 Day31 - 学习Git

    Git是一个版本控制工具 -- 分布式的版本控制系统Mercury - python开发的版本控制软件 Git操作...

  • Git的初步了解

    Git的初步了解 Git的定义Git版本控制系统功能版本控制主动提交中央仓库分类 使用Git的原因 Github和...

  • Git 版本控制工具 (最全命令行总结)

    一 :Git 简介 1、Git 是什么 Git 是分布式版本控制系统,用于开发时版本控制 2、Git 与 SVN...

  • Git 工作原理,基本操作,创建与合并分支

    前东家使用 Perforce 做版本控制,现东家使用 Git。 Git 工作原理 Git 和其他版本控制系统的主要...

  • git与ES6

    git git介绍 git(https://github.com/)是分布式版本控制技术SVN是集中式管理版本控制...

网友评论

      本文标题:版本控制Git

      本文链接:https://www.haomeiwen.com/subject/zpbugftx.html