版本管理工具小介绍

版本管理工具是干什么用的?


1.备份文件:
功能类似于u盘存储电影,版本管理工具用于备份存储代码文件。
2.记录历史:
每一次对文件的某一行进行修改的时间、修改人及历史版本都会进行存储,可回溯。
3.回到过去:
因每次提交都会备份,所以即使某个文件被删除,并且删除操作已提交给版本管理工具,该文件都可通过历史备份进行恢复。如时光机,可回到任意过去时刻的状态。
4.多端共享:
不同设备工作,可异地。
5.团队协作:
帮助解决团队协作中的冲突,并尽可能降低负面影响。

版本管理工具的历史


版本管理工具历史.png

cvs: 创于荷兰一大学实验室,是版本管理工具始祖,属集中式版本管理工具
svn: 创于某国外公司,为解决cvs的众多bug,有众多用户,当时的开源文件和很多公司在进行开发时均使用svn,属集中式版本管理工具。
**git: ** linux核心创造者创造了git,现是极客的主流版本管理工具,属分布式版本管理工具。
github: 程序员社区网站,程序员可托管自己的软件库,但是该托管需要基于git来完成。

集中式和分布式版本管理工具


集中式版本管理工具

如网盘,最新文件放至中心服务器,每当更新时从中心服务器拿出文件进行修改,修改后再同步至中心服务器。
优:只要能连上中心服务器,就可以把最新文件放至中心服务器。
劣:当不可以联网时,就不可更新文件,无法工作。同时,若中心服务器崩溃,所有文件和操作全部丢失。
例:cvs,svn

分布式版本管理工具

每个拥有版本库的人都可在不联网的情况下快速完成文件提交、查看记录和删除等操作。它不拥有中心服务器,每个支端都拥有完整代码库,各支端只要相互交换或推送新修改即可。但通常情况下,会有一个支端充当中心服务器,其作用只是用于方便交换修改,没有该中心依旧可以工作。分布式版本管理工具的效率要高于集中式版本管理工具。
优:在无联网条件的情况下也可对文件进行更新操作。当“中心服务器”或某支端代码库崩溃时,不会导致所有文件全部丢失,因每个支端都存有全套代码库。
例:git


参考:
http://www.imooc.com/learn/208(第1,2章)
http://www.zhihu.com/question/25577853

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一章 版本控制简史 1.1 为什么要进行版本控制?为什么选择Mercurial? 版本控制是管理一段信息的多个版...
    Hanjingyu阅读 4,814评论 0 2
  • 源代码管理工具的起源 为什么会出现源代码管理工具? 为了解决在软件开发过程中,由源代码引发的各种蛋疼繁琐问题 源代...
    小白文_Vincent阅读 8,432评论 2 8
  • 源代码管理工具-SVN 一. 了解-源代码管理工具概述 1. 源代码管理工具的作用? 能追踪一个项目从诞生一直到定...
    牧马人_hlc阅读 4,678评论 0 11
  • 目录 一. 了解-源代码管理工具概述二. 掌握-SVN的基本介绍三. 了解-SVN服务器配置四. 掌握-UNIX基...
    Mg明明就是你阅读 8,529评论 2 11
  • 前几天晚上路过一个小书摊,随手买了一本书,是蕾秋·乔伊斯的《一个人的朝圣》。 男主人公哈罗德是一位退休工人,在酿酒...
    熊瞪阅读 3,385评论 3 10