Git,同SVN等都是版本控制系统,却与之有本质的区别,若理解了 Git 的思想和基本工作原理,用起来就会知其所以然,游刃有余。
这篇文章主要介绍一下git与其他版本控制系统的区别,顺带安装git,参考文档:https://git-scm.com/book/en/v2。
Git 和其它版本控制系统(包括 Subversion 和近似工具)的主要差别在于 Git 对待数据的方法。 从概念上来说,其它大部分系统以文件变更列表的方式存储信息,这类系统(CVS、Subversion、Perforce、Bazaar 等等) 将它们存储的信息看作是一组基本文件和每个文件随时间逐步累积的差异,可以说是基于差异(delta-based)的版本控制。如下图:
反之,Git 更像是把数据看作是对小型文件系统的一系列快照。 在 Git 中,每当你提交更新或保存项目状态时,它基本上就会对当时的全部文件创建一个快照并保存这个快照的索引。 为了效率,如果文件没有修改,Git 不再重新存储该文件,而是只保留一个链接指向之前存储的文件。 Git 对待数据更像是一个快照流。如下图:
Git主要有三个工作流程:
如果 Git 目录中保存着特定版本的文件,就属于 已提交 状态。 如果文件已修改并放入暂存区,就属于 已暂存 状态。 如果自上次检出后,作了修改但还没有放到暂存区域,就是 已修改 状态。
在接下来的使用过程中会进一步熟悉Git。
由于Git安装较为简单,在本篇文章中带过即可
$ sudo yum install git-all 卸载 $ sudo yum remove git-all