Subversion的介绍和使用电子教案

上传人:yulij****0329 文档编号:142567585 上传时间:2020-08-20 格式:PPT 页数:28 大小:168KB
返回 下载 相关 举报
Subversion的介绍和使用电子教案_第1页
第1页 / 共28页
Subversion的介绍和使用电子教案_第2页
第2页 / 共28页
Subversion的介绍和使用电子教案_第3页
第3页 / 共28页
Subversion的介绍和使用电子教案_第4页
第4页 / 共28页
Subversion的介绍和使用电子教案_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《Subversion的介绍和使用电子教案》由会员分享,可在线阅读,更多相关《Subversion的介绍和使用电子教案(28页珍藏版)》请在金锄头文库上搜索。

1、Subversion的介绍和使用,Liang Chen ,什么叫版本控制,版本控制(Revision control)是一种软件工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。 版本控制透过文档控制(documentation control)记录程序各个模组的改动,并为每次改动编上序号。这种方法是维护(maintenance) of 工程图(engineering drawings)的标准做法, 它伴随着工程图从图的诞生一直到图的定型。 一种简单的版本控制形式,例如,赋给图的初版一个版本等级“A”。当做了第一次改变后,版本等级改为“B”,以此类推等等。,如何理解,团队开

2、发的一种需要 大家的进度可以共享,却可以独立的做自己的事情 用版本号来控制每一次的更新,其他问题,我想知道其他人最近做了什么 发现以前的版本更好用,但我却找不到它 同一模块不同的人做了不同的修改,如何解决冲突 庞大的文件夹解决不了问题,工具,有需求就有工具,并且工具的强大功能让人耳目一新 我们需要一个类似于文件系统的工具来帮助管理和维护 服务器和客户端这种模型能成为可能,几种工具,CVS (Current Version System ): linux,windows VSS (Visual Source Safe):只能在windows下,作为 Microsoft Visual Studio

3、 的一名成员,它主要任务就是负责项目文件的管理,几乎可以适用任何软件项目。 SVN:比CVS高级一点,windows, linux Subvertion:今天的主题,Subversion是什么,一个自由/开源版本控制系统,它管理文件和目录可以超越时间。 一组文件存放在中心版本库,这个版本库很像一个普通的文件服务器,只是它可以记录每一次文件和目录的修改,这便使你可以取得数据以前的版本,从而可以检查所作的更改。,更多,可以通过网络访问它的版本库,从而使用户可以在不同的电脑上使用。一定程度上可以说,允许用户在各自的地方修改同一份数据是促进协作。 不必担心由于失去某个通道而影响质量,如果存在不正确的改

4、变,只要取消改变。 可以管理任何类型的文件集,对你这可能是源代码对别人,可能是一个货物清单或者是数字电影。,Subversion的历史 ,自由软件的成果,2000年,CollabNet开始寻找CVS替代产品的开发人员,CollabNet提供了一个协作软件套件SourceCast,它的一个组件是版本控制系统。 2000年2月,他们联系Open Source Development with CVS(Coriolis, 1999)的作者Karl Fogel,并且询问他是否希望为这个新项目工作,巧合的是,当时Karl正在与朋友Jim Blandy讨论设计一个新的版本控制系统。,更多,RedHat软件

5、赞助他们到这个项目并提供了一个宽松的时间。CollabNet雇佣了Karl和Ben Collins Sussman,详细的设计从三月开始,在Behlendorf 、CollabNet、Jason Robbins 和 Greg Stein的恰当激励的帮助下,Subversion很快吸引了许多活跃的开发者,结果是许多有CVS经验的人们很乐于有机会为这个项目做些事情。,更多,经过14个月的编码,2001年8月31日,Subversion自己能够“成为服务”了,开发者停止使用CVS保存Subversion的代码,而使用Subversion本身。 Subversion像许多开源项目一样,被一些激励知识界

6、精英的宽松透明的规则支配着。CollabNet的版权许可证完全符合Debian的自由软件方针,也就是说,任何人可以自由的下载,修改和重新发布,不需要经过CollabNet或其他人的允许。,基本模型,Subversion是一种集中的分享信息的系统,它的核心是版本库,它储存所有的数据,版本库按照文件树形式储存数据包括文件和目录。任意数量的客户端可以连接到版本库,读写这些文件。通过写,别人可以看到这些信息,通过读数据,可以看到别人的修改。,TortoiseSVN的使用,安装:TSS,FTP:/218.94.9.38 基本概念:档案库Repository,工作拷贝Working Copies 跟踪手段

7、:.SVN目录 命令:右键操作,方便简明,两个概念,档案库Repository:档案库用分层的“文件-目录”文件系统数来存储数据。连接到档案库的客户能读写数据。档案库记录了你的每一次修改!客户端可以从档案库中取到过去的版本。 工作拷贝Working Copies:通常情况下,你的工作拷贝每一个文件夹有一个以.svn为名的文件夹,也被叫做工作拷贝管理目录,这个目录里的文件能够帮助Subversion识别哪一个文件做过修改,哪一个文件相对于别人的工作已经过期了。,.SVN目录,保证工作拷贝能及时跟踪档案库 原因:对于工作拷贝的每一个文件,Subversion在管理区域.svn/记录两项关键的信息:

8、工作文件所作为基准的修订版本(叫做文件的工作修订版本)和一个本地拷贝最后更新的时间戳。 结果:四种状态,四种状态,未修改且是当前的 :文件在工作目录里没有修改,在工作修订版本之后没有修改提交到版本库。svn commit操作不做任何事情,svn update不做任何事情。 本地已修改且是当前的 :在工作目录已经修改,从基本修订版本之后没有修改提交到版本库。本地修改没有提交,因此svn commit会成功的提交,svn update不做任何事情。 未修改且不是当前的了 :这个文件在工作目录没有修改,但在版本库中已经修改了。这个文件最终将更新到最新版本,成为当时的公共修订版本。svn commit

9、不做任何事情,svn update将会取得最新的版本到工作拷贝。 本地已修改且不是最新的 :这个文件在工作目录和版本库都得到修改。一个svn commit将会失败,这个文件必须首先更新,svn update命令会合并公共和本地修改,如果Subversion不可以自动完成,将会让用户解决冲突。,创建档案库,进入资源管理器 创建档案库的子目录,如C:/SVNRepository。 在新建的目录中右键 TortoiseSVN-在此建立档案库Create Repository here. 可用FSFS和BDB两种格式创建。,数据汇入档案库Import,删除与项目无关的中间文件如生成的临时文件*.obj

10、等。 在资源浏览器中进入项目顶层文件夹,右键得到快捷菜单,选择汇入 (Import.),取出工作拷贝Check Out,在资源浏览器中选定将要存放工作目录的拷贝,右键弹出快捷菜单,选择CheckOut,汇出Export,如果不想包含.svn ,可将档案库汇出到一个空目录。这时所有文件不处在版本控制下。方法:右键,选择TortoiseSVN-汇出(Export.)。,Status Of The Repository,想知道别人修改了哪些文件?用检查更新.(Check For Updates.) 命令。弹出的对话框将显示出你的修改或档案库中别人的修改,这样可在更新前检查是否有冲突。,改动送到档案库 Commit,如果你的工作拷贝已更新且没有冲突,可用快捷菜单中的送交Commit. 完成送交过程。,将别人的改动更新到你的工作拷贝,更新也许是单个文件、或选择的一组文件、或整个目录。在资源浏览器中选择待更新的文件或目录, 右键并选择更新Update ,他人的修改将合并到你本地的文件中,你所做的改动保存在同一文件中。,谁动了我的奶酪?,有时你不但要知道那些代码改动了,还要知道谁改动的!使用追根溯源(谴责)Blame. 即可!,资源,That is all!,Thank you!,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号