Download presentation
Presentation is loading. Please wait.
1
认识版本控制 柳峰
2
现存的问题 程序被误删了,无法恢复,只能重写。 多人同时修改一个文件时,有些人的修改结果被冲掉了。
不了解文件的修改过程,尤其是最后做了哪些修改? 花了很长时间查出的BUG,却发现同事上周已经修复。 对文件做了大量改动,又想将其恢复到以前的某个状态。 在项目中发现BUG,想知道它是什么时间产生的。 新版本上线失败,需要回退到以前的版本,却忘记备份。 我写了一个方法被别人修改了,为什么要修改? 当某些文件被误删,或者项目出现BUG,都说不关自己的事。
3
什么是版本控制 版本控制(Revision control)是一种软件工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。版本控制就是对软件开发过程中的文档、程序代码的版本(每一次改动)进行管控(记录、跟踪、比较、合并等)。 Network 开发人员A 开发人员B 版本控制服务器 存储文件 读取文件
4
版本控制系统的发展史 本地 集中化 CVCS 分布式 DVCS 通过单一的集中管理的服务器,保存所有文件的修订版本,支持多人协作
在本地采用某种简单的数据库来记录文件的历次更新差异,不支持多人协作 客户端并不是提取最新版本的文件快照,而是把原始的代码仓库完整地镜像下来。任何一处协同工作的服务器发生故障,可以用任何一个镜像出来的本地仓库进行恢复
5
常用的版本控制系统 分类 版本控制系统 说明 集中式 VSS CVS SVN 分布式 Git Mercurial Darcs
微软的版本控制系统,全称为Visual Source Safe CVS 最早的开源、免费的CVCS,由于CVS自身设计缺陷,会造成文件提交不完整,版本库莫名其妙损坏的情况 SVN Subversion的简称,它的设计目标就是取代CVS 分布式 Git 一款免费、开源的分布式版本控制系统。Git是Linus Torvalds为了帮助管理 Linux内核开发而开发的一个开放源码的版本控制软件 Mercurial 一种轻量级的DVCS,采用Python语言实现,易于学习和使用,扩展性强 Darcs 新一代轻量级DVCS,完全使用Haskell编写而成
6
THANKS 本课程由柳峰提供 畅销书《微信公众平台应用开发:方法、技巧与案例》作者 CSDN网站:www.csdn.net
企业服务: 人才服务: CTO俱乐部: 高校俱乐部: 程序员杂志: CODE平台: 项目外包: CSDN博客: CSDN论坛: CSDN下载:
Similar presentations