文档详情

分布式版本控制系统-Git详解.pdf

发布:2017-05-08约1.5万字共74页下载文档
文本预览下载声明
Git—— 分布式版本控制系统 版本控制的发展历程 本地版本控制系统 ● 最流行的 rcs ● 保存并管理文件补丁 (patch ) ● 文件补丁是一种特定 格式的文本文件, 记录着对应文件修 订前后的内容变 化。 集中化的版本控制系统 Centralized Version Control Systems ● CVS,Subversion ● 中央服务器的单点故 障 , 整个项目的历史记 录被保存在单一位置 分布式版本控制系统 Distributed Version Control System ● Git ,Mercurial ,Bazaar 还有 Darcs ● 客户端并不只提取最新版本 的文件快照,而是把原始的 代码仓库完整地镜像下来 ● 每一次的提取操作,实际上 都是一次对代码仓库的完整 备份 Git 特征 Git 开发的目标 ● 速度 ● 简单的设计 ● 对非线性开发模式的强力支持(允许上千个并行 开发的分支) ● 完全分布式 ● 有能力高效管理类似 Linux 内核一样的超大规 模项目(速度和数据量) Git 基础要点 ● 直接快照,而非比较差异 ● 近乎所有操作都可本地执行 ( 历史更新摘要 ● 时刻保持数据完整性 ( 内容的校验和 checksum 计算 ,Git 使用 SHA-1 算法 计算数据的校验和,通过对文件的内容或目录的结构计算出一个 SHA-1 哈希值,作为指纹字符 串。该字串由 40 个十六进制字符( 0-9 及 a-f )组成 ● 多数操作仅添加数据 ● 三种状态 : 已提交( committed ),已修改 (modified )和已暂存( staged ) Git 更像是个小型的文件系统,但它同时还提供了许多以此为基础的超强 工具,而不只是一个简单的 VCS ● 其他系统在每个版本 中记录着各个文件的 具体差异 ● Git 保存每次更新时的文件 快照 ● 若文件没有变化, Git 不会 再次保存,而只对上次保存 的快照作一连接 对于任何一个文件,在 Git 内都只有三种状态 ● 已提交 : 表示该文件已经被 安全地保存在本地数据库中 了; ● 已修改 : 表示修改了某个文 件,但还没有提交保存;
显示全部
相似文档