git简介

Git是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容。

Git 易于学习, 占地面积小,具有闪电般的快速性能。它具有诸如Subversion,CVS,Perforce和ClearCase之类的SCM工具,具有廉价的本地分支,便捷的暂存区域和 多个工作流等功能

官网地址:https://git-scm.com/

官网文档地址:https://git-scm.com/book/en/v2/Getting-Started-About-Version-Control

不建议去官网下载,建议百度搜索资源,自行下载。网速好的,请忽略。

附上一个大牛写的比较好的博客git教程,https://www.liaoxuefeng.com/wiki/896043488029600/896067008724000

关于版本控制

什么是“版本控制”,为什么要关心?版本控制是一个记录一段时间内对一个文件或一组文件的更改的系统,以便您以后可以调用特定版本。对于本书中的示例,您将使用软件源代码作为受版本控制的文件,尽管实际上,您可以使用计算机上几乎任何类型的文件来执行此操作。

本地版本控制系统

许多人选择的版本控制方法是将文件复制到另一个目录(如果很聪明,则可能是带时间戳的目录)。这种方法非常简单,因为它很简单,但是也很容易出错。很容易忘记您所处的目录,并意外地将其写入错误的文件或将其复制到不想要的文件中。

附上官网截图

图1.本地版本控制。

最流行的VCS工具之一是称为RCS的系统,该系统今天仍在许多计算机中分发。 RCS的工作原理是将补丁集(即文件之间的差异)以特殊格式保留在磁盘上。然后,通过添加所有修补程序,它可以在任何时间点重新创建任何文件的外观。

 

 

集中式版本控制系统

人们遇到的下一个主要问题是他们需要与其他系统上的开发人员进行协作。为了解决此问题,开发了集中版本控制系统(CVCS)。这些系统(例如CVS,Subversion和Perforce)具有包含所有版本文件的单个服务器,以及许多从该中心位置检出文件的客户端。多年来,这一直是版本控制的标准。

常见的集中式版本控制系统,svn和cvs

图2.集中版本控制。

此设置具有许多优势,尤其是相对于本地VCS。例如,每个人都在某种程度上知道项目中其他每个人在做什么。管理员可以精细地控制谁可以做什么,并且管理CVCS比处理每个客户端上的本地数据库要容易得多。

缺点:每个机器组件需要保持网络畅通,比较考验网络问题,如果是局域网还好。本人就吃过这个亏。但是也有他的优点。

如果中央数据库所在的硬盘损坏了,并且没有保留适当的备份,那么您将丢失所有一切-项目的整个历史记录,除了人们在本地计算机上碰巧拥有的单个快照之外。本地VCS系统也遭受相同的问题-只要将项目的整个历史记录放在一个地方,就可能会失去所有内容。一般来说这个情况还是很少出现的。

 

分布式版本控制

这是分布式版本控制系统(DVCS)介入的地方。在DVCS(例如Git,Mercurial,Bazaar或Darcs)中,客户端不只是签出文件的最新快照;而是在客户端中检查文件的最新快照。相反,他们完全反映了存储库,包括其完整的历史记录。因此,如果有任何服务器死亡,并且这些系统通过该服务器进行协作,则可以将任何客户端存​​储库复制回服务器以恢复该服务器。每个克隆实际上都是所有数据的完整备份。

可以理解为:每台机器都有自己的仓库,远方还有一个仓库,任何仓库出现不可修复时,可以直接克隆他人的就可以恢复了。

图3.分布式版本控制。

此外,这些系统中的许多系统都可以很好地处理可以使用的多个远程存储库,因此您可以在同一项目中同时以不同的方式与不同的人员进行协作。这使您可以设置在集中式系统中无法实现的几种类型的工作流,例如层次模型。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值