感谢支持
我们一直在努力

【Git体验】Git原理及基础

原理:分布式版本控制系统像 Git,Mercurial,Bazaar 以及 Darcs 等,客户端并不只提取最新版本的文件快照,而是把原始的代码仓库完整地镜像下来。这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜 像出来的本地仓库恢复。因为每一次的提取操作,实际上都是一次对代码仓库的完整备份。

【Git体验】Git原理及基础

更进一步,许多这类系统都可以指定和若干不同的远端代码仓库进行交互。籍此,你就可以在同一个项目中,分别和不同工作小组的人相互协作。你可以根据需要设定不同的协作流程,比如层次模型式的工作流,而这在以前的集中式系统中是无法实现的。

² 快速度

² 简单

² 对非线性 并发(允许上千个并行开发的分支)

² 完全分布式

基于Gitolite的Git服务架设 http://www.linuxidc.com/Linux/2014-02/96991.htm

Fedora通过Http Proxy下载Git http://www.linuxidc.com/Linux/2009-12/23170.htm

在Ubuntu Server上安装Git http://www.linuxidc.com/Linux/2009-06/20421.htm

服务器端Git仓库的创建(Ubuntu) http://www.linuxidc.com/Linux/2011-02/32542.htm

Linux下Git简单使用教程(以Android为例) http://www.linuxidc.com/Linux/2010-11/29883.htm

Git权威指南 PDF高清中文版 http://www.linuxidc.com/Linux/2013-10/91053.htm

基础

1.非差异比较,直接记录快照

Git 只关心文件数据的整体是否发生变化,而大多数其他系统则只关心文件内容的具体差异。

其他版本控制器工作,把修改的文件,及其修改的内容都保存下来了。

【Git体验】Git原理及基础

其他系统图

Git 并不保存这些前后变化的差异数据。实际上,Git 更像是把变化的文件作快照后,记录在一个微型的文件系统中。每次提交更新时,它会纵览一遍所有文件的指纹信息并对文件作一快照,然后保存一个指向这次快照 的索引。为提高性能,若文件没有变化,Git 不会再次保存,而只对上次保存的快照作一链接。

【Git体验】Git原理及基础

Git 保存每次更新时的文件快照

2.操作都是本地执行

在 Git 中的绝大多数操作都只需要访问本地文件和资源,不用连网。修改添加完成之后,保存到本地缓存区,Git 在本地磁盘上就保存着所有当前项目的历史更新,要查看历史的版本也很容易,不需要联网,只有当你要把本地缓存区数据push到服务器上时候才需要联网。

但是其他的版本控制不能做到离开网络,比如使用cvs,你可以本地修改添加,但是需要比对历史版本或者查看谁修改了版本,都需要联网支持,有时候访问很慢的。

3.保证数据的完整性

保存到git的数据都需要进行验证和计算,并将此结果作为数据的唯一标识和索引。即,修改目录或者内容之后,git是完全可以知道的。Git 使用 SHA-1 算法计算数据的校验和。

4.git数据的3中状态

已修改(modified):在工作环境中,增删改后保存到工作区域。

已暂存(staged):把工作区间的代码提交到本地缓存区,但是还没提交到服务器主干上。

已提交(committed):同步到服务器上,需要联网。

Git 的详细介绍:请点这里
Git 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-07/104301.htm

赞(0) 打赏
转载请注明出处:服务器评测 » 【Git体验】Git原理及基础
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏