【Git】起步

git起步

关于版本控制

本地版本控制:RCS

集中化的版本控制:VCS

分布式的版本控制:Git

git的版本控制

【Git】起步_第1张图片

Git 更像是把数据看作是对小型文件系统的一系列快照。 在 Git 中,每当你提交更新或保存项目状态时,它基本上就会对当时的全部文件创建一个快照并保存这个快照的索引。 为了效率,如果文件没有修改,Git 不再重新存储该文件,而是只保留一个链接指向之前存储的文件。 Git 对待数据更像是一个 快照流

git保证完整性

Git 中所有的数据在存储前都计算校验和,然后以校验和来引用。 这意味着不可能在 Git 不知情时更改任何文件内容或目录内容。 这个功能建构在 Git 底层,是构成 Git 哲学不可或缺的部分。 若你在传送过程中丢失信息或损坏文件,Git 就能发现。

Git 用以计算校验和的机制叫做 SHA-1 散列(hash,哈希)。 这是一个由 40 个十六进制字符(0-9 和 a-f)组成的字符串,基于 Git 中文件的内容或目录结构计算出来。 SHA-1 哈希看起来是这样:

24b9da6552252987aa493b52f8696cd6d3b00373

Git 中使用这种哈希值的情况很多,你将经常看到这种哈希值。 实际上,Git 数据库中保存的信息都是以文件内容的哈希值来索引,而不是文件名。

git的三种状态

被git管理的文件存在3种状态:

  • modified:已修改,表示已经修改了文件,但没有保存到数据库中
  • staged:已暂存,表示已经对一个已经修改的文件进行了标记,使之包含在下次提交的快照中。
  • committed:已提交,数据已经存储到本地数据库中

git的三个区域

Git 项目拥有三个区域:工作区、暂存区以及 Git 目录。

工作区、暂存区以及 Git 目录。

  • 工作区:放在磁盘上的工作区域,需要进行版本管理的目录
  • stage区/暂存区:是一个暂时存储的区域,并不实际上存在一个这样的文件,stage区只是保存了下次要提交的文件列表。
  • .git目录:用来保存项目元数据和对象数据库的地方,从其他计算机克隆仓库时,复制的就是这里的数据。

git的基本流程

1.在工作区修改文件

2.将你想要下次提交的更新选择性的暂存,这样,只有需要提交的更新才会进入staged区

3.提交更新,找到staged区的文件,将快照永久性存储到git目录中。

你可能感兴趣的:(Git)