七版本控制软件介绍PPT课件_第1页
七版本控制软件介绍PPT课件_第2页
七版本控制软件介绍PPT课件_第3页
七版本控制软件介绍PPT课件_第4页
七版本控制软件介绍PPT课件_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,1,第七讲版本控制软件介绍,.,2,提纲,为什么需要使用版本控制软件常用的版本软件软件SVN服务器的安装及配置SVN客户端软件的安装及配置NetbeansSVN客户端的使用TSVN基本功能的介绍Eclipse下的SVN插件,.,3,1.1使用版本控制软件的理由,及时了解团队中其他成员的进度。轻松比较不同版本间的细微差别;记录每个文件成长的每步细节,利于成果的复用(reuse);资料共享,避免以往靠拷贝文件造成的版本混乱;人人为我,我为人人。所有成员维护的实际是同一个版本库,无需专人维护所有文件的最新版本;协同工作,大大提高团队工作效率,无论团队成员分布在天涯还是海角;,.,4,1.2现实状况,文档:改错了、不小心删了代码:以前的更好?版本发布:旧版有问题,相应源码没有了保存所有的版本:版本混乱最新版:那个才是最新版啊?,.,5,2常用的开源版本软件软件,CVS,较早很流行的开源版本系统SVN(Subversion),开源,与CVS原理和功能相似,取代CVSGit,开源,分布式版本管理系统,目前发展势头很强。,.,6,3Subversion相关软件,是一个客户/服务器系统软件包含服务器软件部分,Subversion客户端软件,TortoiseSVN的版本控制系统Subversion:是一个开源的版本控制系统,拥有CVS的大部分特征,并在CVS的基础上有更强的扩展,用来代替CVS系统。TortoiseSVN:SVN的客户端工具,和资源管理器完美集成,基于TortoiseCVS的代码开发,使用上与TortioseCVS极其相似;,.,7,3.1SVN基本概念,配置库(Repository)配置(repository),就是位于服务器端,统一管理和储存数据的地方。SVN的核心是配置库,配置库按照文件树形式储存数据包括文件和目录任意数量的客户端可以连接到配置库,读写这些文件。通过写数据,别人可以看到这些信息;通过读数据,可以看到别人的修改。最特别的是Subversion会记录配置库中的每一次更改,不仅针对文件也包括目录本身,包括增加、删除和重新组织文件和目录。,.,8,3.1SVN基本概念,Checkout,Commit,.,9,3.1SVN的工作模式,复制-修改-合并方案(Subversion默认的模式)在这种模型里,每一个客户读取项目配置库建立一个私有工作副本版本库中文件和目录的本地映射。用户并行工作,修改各自的工作副本,最终,各个私有的复制合并在一起,成为最终的版本,这种系统通常可以辅助合并操作,但是最终要靠人工去确定正误。锁定-修改-解锁方案在这样的模型里,在一个时间段里配置库的一个文件只允许被一个人修改。此模式不适合软件开发这种工作。,.,10,3.1SVN基本概念,工作副本(WorkSpace,工作空间)与位于中央配置库相对应,每个人的工作空间,它是每个程序员工作的地方程序员从配置库拿到源代码,放在本地作为工作副本在工作副本上进行查看、修改、编译、运行、测试等操作,并把新版本的代码从这里提交回配置库库中。,.,11,3.2SVN服务器,SVN服务器,支持linux和windows,更多是安装在Linux下。SVN服务器有2种运行方式:独立服务器借助apache。2种方式各有利弊。SVN存储版本数据也有2种方式:BDB,在BerkeleyDB数据库中存放数据;和FSFS。是使用普通文件,采用自定义的格式来储存。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。,.,12,3.2SVN服务器软件,Windows环境下常用的两种SubversionVisualSVNServerVisualSVNServer集成了Subversion和Apache;封装SVNServer为windwsservice,并随机器自动启动;图像化配置Apache服务器,指定认证方式、访问端口等简单操作;图像界面配置用户权限等。本讲详细介绍VisualSVNServer作为SVN服务器端软件,.,13,3.2.1下载Subversion服务器,VisualSVN:VisualSVN-Server-2.5.4.msi,.,14,3.2.2安装VisualSVN,.,15,3.2.3启动可视服务器管理器,.,16,3.2.4Trunk、Tranches、Tags之间的区别,Trunk、Tranches、Tags只是便于用户区分不同类型版本的三个存放目录,为可选项。Trunk为主流版本容器,用于存放该项目的主版本,通常一个项目对应一个主版本。Branches为分支版本容器,用于存放该项目的分支版本。在项目开发过程中,经常要开发许多新功能,在开发这些新功能时,常会带来编译错误与bug,影响原有程序的正常执行。因此,SVN为开发这些新功能专门设有Branches存放目录,在新功能足够稳定的情况下,把这些版本融合到主流版本中。Tags为特殊版本容器,每阶段保存一个版本,作为该软件的里程碑,比如发行版,方便你日后对各发行版bug的修改。,.,17,3.2.4配置可视服务器管理器,.,18,4.SVN客户端,SVN客户端概述SVN客户端的安装SVN客户端的使用,.,19,4.1SVN客户端类型,Subversion的客户端有三种,第一种是websvn等基于web的,需要web服务器的支持适宜于跨越防火墙、基于Internet的协作项目。开源项目常用它。第二种客户端软件,需要用户在本地安装客户端。以TortoiseSVN为代表适宜集团内部的软件开发项目第三种是插件,与Netbean,Eclipse等开发工具紧密集成,.,20,4.2TortoiseSVN的安装,需要安装客户端安装完毕后,在“资源管理器”里点击右键,会有如下菜单出现:,.,21,安装TortoiseSVN-1.7.6.22632-x32-svn-1.7.4.msi时出现以下错误信息。,.,22,4.3NetBeans自带SVN客户端插件,将一新项目导入到资源库中,.,23,4.3NetBeans自带SVN客户端插件,更新修改的文件,.,24,显示新作的修改内容,.,25,4.4TSVN的使用基本流程,.,26,SVN使用图标说明,一个新检出的工作副本使用绿色的对勾做重载。表示Subversion状态正常.当我们开始编辑一个文件后,图标将变成红色感叹号。通过这种方式,可以很容易地看出我们对哪些文件进行了修改操作,但是还没有提交到版本库中;如果在提交的过程中出现了冲突,图标将变成黄色感叹号。如果我们拥有了一个文件的锁,并且Subversion状态是正常,这个重载图标将提醒我们:如果不使用该文件的话,请进行释放锁操作,允许其他成员提交对该文件的修改。,.,27,SVN使用图标说明,这个图标表示当前文件夹下的某些文件或文件夹已经被计划从版本控制中删除,或是该文件夹下某个受控的文件丢失了。加号告诉我们有一个文件或是目录已经被计划加入版本控制。,.,28,CheckOut(检出),作用:将版本库中的内容检出到本地工作副本步骤:1.新建一个空文件夹;比如:E:Proj_trunk2.在此目录中点击右键-SVNCheckout.,.,29,CheckOut的注意项,检出深度:1.全递归(默认选择)检出完整的目录树,包含所有的文件或子目录。2.直接节点,包含目录检出目录,包含其中的文件或子目录,但是不递归展开子目录。3.仅文件子节点检出指定目录,包含所有文件,但是不检出任何子目录。4.仅此项。只检出目录。不包含其中的文件或子目录。,省略外部引用:如果项目含有外部项目的引用,而这些引用我们不希望同时检出,请选中忽略外部项目复选框。如果选中了这个复选框,更新的时候要使用命令”更新至版本UpdatetoRevision.”,.,30,Update(更新),作用:更新工作副本使其成为版本库中的最新版本SVN将显示出更新的文件和更新的次数,.,31,Commit(提交),对工作副本进行编辑后提交到SVN在右键菜单中点击SVNCommit提交前写好信息,点击确定,.,32,权限控制,当进行提交文件操作的时候您将看到权限提示信息输入您的用户名和密码保存权限设置(见红圈),可以避免将来重复输入用户名和密码,.,33,如何删除认证数据,步骤:点击右键选择设置以保存数据清除认证数据,.,34,Showlog(显示日志),.,35,日志信息填写规则,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论