版本控制器

1、版本控制

        版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。版本控制最主要的功能就是追踪文件的变更。

2、版本控制器

        版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。

3、版本控制器的作用

  1. 可以协同代码管理,让多人开发代码得以实现。
  2. 回归到以前的任何一个时间点的代码处(好比:开始写了很多代码,后面有修改了一些,突然IDE崩溃,但是发现还是以前的代码更好,这个时候无法回去,这个时候没有后悔药吃,但是可以使用版本备份,但是即花费空间和花费时间)。
  3. 由于上面的版本备份造成版本众多,难于找到正确的版本(SVN有专门的日志记录了文件的每一次修改,可以通过查看日志回到任何一个自己想要的版本)。
  4. 代码冲突的问题,主要是多人操作同一个文件(团队开发很常见)。
  5. 可以查看每个人具体的操作,便于出现问题后及时排查(由于某个员工个人失误造成很大的bug,可以方便的追究责任)。

4、版本控制器分类

4.1、集中式

        版本库是集中存放在中央服务器的,工作的时候,使用自己的电脑,要先从中央服务器取得最新的版本,然后开始工作,结束后,再把自己的变更推送给中央服务器。

        缺点是必须联网才能工作,操作时每一步都需要和服务器交互数据,对网络带宽要求很高,文件过大时速度很慢。

4.2、分布式

        分布式版本控制系统本身没有“中央服务器”,每个人的电脑上都是一个完整的版本库。

        和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了。

        在实际使用分布式版本控制系统的时候,其实很少在两人之间的电脑上推送版本库的修改,因为可能你们俩不在一个局域网内,两台电脑互相访问不了,也可能今天你的同事病了,他的电脑压根没有开机。因此,分布式版本控制系统通常也有一台充当“中央服务器”的电脑,但这个服务器的作用仅仅是用来方便“交换”大家的修改,没有它大家也一样干活,只是交换修改不方便而已。

5、常见的版本控制器分类

​CVS(90年代开发,版本控制器的鼻祖)

SVN(CVS的接班人)

VSS(微软产品)

GIT(李纳斯开发)

你可能感兴趣的:(版本控制器,版本控制器)