版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1版本管理的必要性软件项目越来越大,代码越来越复杂;项目小组越来越大,协作越来越困难;用户群体越来越大,需求越来越多变;怎样对研发项目进行整体管理;项目开发小组的成员之间如何以一种有效的机制进行协调;如何进行对小组成员各自承担的子项目的统一管理;如何对研发小组各成员所作的修改进行统一汇总;如何保留修改的轨迹,以便撤销错误的改动;对在研发过程中形成的软件的各个版本如何进行标识,管理及差异识辨等等。1版本管理的必要性为此,我们必须要引进一种管理机制,一个版本管理机制,而且是广义上的版本管理,它不仅需要对源代码的版本进行管理,而且还要对整个项目进行管理。如果说70年代的软件危机导致了软件工程思想的诞生和理论体系的发展,那么80~90年代尤其是90年代软件产业的迅猛发展导致了另一种新思想的产生和实现,这就是软件的版本管理。1版本管理的必要性版本管理常用工具:CC(IBMRationalClearCase)CVS(ConcurrentVersionSystem)VSS(VisualSourceSafe)北京大学CASE实验室2VisualSourceSafe6.0(VSS6.0)简介VSS6.0是MicrosoftVisualStudio6.0开发产品家族的一员,如VisualC++6.0和VisualJ++6.0一样。Microsoft的VSS6.0解决了软件开发小组长期所面临的版本管理问题,它可能有效地帮助项目开发组的负责人对项目程序进行管理,对所有的项目源文件(包括各种文件类型)进行控制。2.1VSS的简单工作原理VSS6.0将所有的项目源文件(包括各种文件类型)以特有的方式存入数据库。开发组的成员不能对该数据库中的文件进行直接的修改,而是由该版本管理器将该项目的源程序或是子项目的源程序拷贝到各个成员自己的工作目录下进行调试和修改,然后将修改后的项目文件作Checkin提交给VSS,由它进行综合更新。当某个成员向VSS中添加文件时,该文件将会被备份到数据库中,以便所有的成员都能共享该文件。而且每个成员对所有的项目文件所作的修改都将被记录到数据库中,从而使得修改的恢复和撤销在任何时刻,任何位置都成为可能。小组的成员能得到该项目的最新版本,对它进行修改,并保存一个新的版本。2.1VSS的简单工作原理当一个和一组文件发放给另一个成员、小组、Web站点或是任何其他的地址,VSS确保他们之间的真正共享及所选的一组文件的不同版本的安全性。VSS可以很容易地与MicrosoftAccess、VisualBasic、VisualC++、VisualFoxPro和其他的开发工具集成在一起,一旦VSS集成到开发环境中,就可以象控件一样使用,能够很好地体现出VSS的易用性和强大功能。2.2VSS中的几个重要概念首先是项目的概念,所谓的项目是一组存在VSS中的文件(任何类型),可以在项目中或是项目之间进行文件的添加、删除、编辑和共享。一个项目与操作系统的文件夹有很多的相似之处。2.2VSS中的几个重要概念第二个是版本的概念。VSS能够维护一个文件的多个版本,包括一个从不同版本之间进行修改的记录。版本控制包括如下方面:组内协调版本跟踪跨平台开发重用或面向对象代码2.2VSS中的几个重要概念VSS提供版本控制和历史服务,以保证一个文件的每个版本都是可恢复的。VSS用日期/时间戳来记录文件是何时被Checkout或是何时被修改的,它主要有三种方法来跟踪文件和项目的版本:版本号:这是由VSS维护的内部数码,用户对它没有控制权。每个文件和项目的每个版本都有一个版本号,这些版本号总是一个整数且是递增的。标签:这些是用户赋给某个项目或文件的某个版本的一个字符串,可以是任何格式的长度不超过31字符的字符串。日期/时间戳:它给出了一个文件何时最后被修改的信息,或者是一个文件何时被Checkin。VSS同时支持12小时和24小时的时间格式。2.2VSS中的几个重要概念工作目录是用户真正对项目文件进行调试修改的地方,当用户Checkout或提取一个文件时,VSS将该项拷贝到用户的工作目录下,当用户修改了该文件并将其Checkin或提交时,VSS再将它从用户的工作目录拷回到VSS的数据库中。在用户作Checkout时,VSS将会自动管理他的工作目录,诸如创建必要的子目录。而且工作目录可以随时创建或修改。2.3VSS6.0的解决方案如何运用VSS6.0来实际解决软件开发工程中的版本管理和控制问题,怎样有效地构架一个系统的解决方案。首先,不同的网络结构局域网内:VSS广域网:VOS+VSS2.3VSS6.0的解决方案其次是对于项目本身来说的,一个项目经过分析设计后一般都会分成若干个子项目由若干个开发小组各自负责编码调试,但软件开发的实际情况决定了各个小组之间并不是完全独立的,他们在很多情况下都需要协调交互和信息反馈,开发过程中的每一步都有可能会导致对前一阶段工作的修正,因为软件开发很大程度上是一个螺旋式的过程,更不用说小组之内的相互交流了。在这个不断交互改动的过程中,将可能形成的项目的阶段版本、部分版本和完整版本的数量是可想而知的,而以往的通常的版本人工管理方法已是不能胜任了。2.3VSS6.0的解决方案第三,还有一个非常重要的方面不可忽略,这对系统软件的开发尤为明显,即软件的层次结构。一般的做法是在通用的系统软件之上为多个应用开发相应的应用程序,与此相对照的项目开发组也一般分为系统开发组和各个应用开发组,应用软件的开发和使用过程中将会反馈回无数的应用本身和系统软件的问题,如果只是针对每个应用来单独修改更新系统软件版本,这样就不可避免地导致多个系统版本的不一致,这样对于真正解决系统所存在的问题就显得力不从心了。而VSS6.0正适合于这种软件的开发体系结构,可以为各个小组创建自己的项目,而这些项目又从属于一个总的项目,所有的修改都将被汇总处理以形成一个统一的最新版本。2.3VSS6.0的解决方案针对这样最为普通的一个软件开发环境和组织结构,运用VSS6.0进行版本控制管理的非常有效而且代价较小的解决方案是:在一台WindowsNT服务器或者是一台较为独立的Windows98/95PC上安装VSS6.0的服务器端软件,创建一个为该整个项目存放用的数据库,然后在该数据库中创建各个项目和子项目,并由VSS管理员为小组的每个成员创建一个帐号及他们各自的权限;在开发小组其他成员的PC上安装VSS的客户端软件,并创建自己的工作目录,这样在软件的开发过程中,他们只要通过该客户端软件登录到VSS服务器上,Checkout当前要进行工作的项目或文件,如有修改的在工作结束时将其Checkin提交给VSS服务器进行统一更新。解决方案如图1所示。2.3VSS6.0的解决方案解决方案如图1所示。2.4VSS6.0服务器的安装现在来看一下如何安装VSS6.0服务器。第一步,将VisualStudio6.0的CD1放入CD-ROM,自动进入安装程序,选择第二项“ServerApplicationsandTools(AddOnly)”,如图所示:第二步,然后在“ServerSetups”的“ServerComponents”中选择“VisualSourceSafeServer”,按“Install”按钮后,根据提示放入CD2,如图所示:第三步,根据InstallationWizard的提示,继续安装过程,选择安装路径,按图中左上角的按钮,系统继续进行安装,直至提示你重启以使新安装的程序生效,重启计算机。至此,VSS6.0服务器的安装完毕。2.5VSS6.0客户端的安装在VSS6.0服务器安装完毕后,就可以在VSS管理员的指导下安装客户端的软件。由于我们是在一个Windows环境的子网内,每台PC客户机均可通过网上邻居来访问VSS服务器。在VSS管理员为用户指明VSS客户端软件的安装程序“Netsetup.exe”的位置后,用户可以直接通过资源管理器“Explorer”在网上邻居中找到该程序,并双击以运行它,如图5所示。Netsetup.exe被启动后进入VSS客户端的安装,在如下提示框中输入用户名和工作组名,如图6所示。选择VSS的安装路径后,在图7中点击安装图标,进入实际安装步骤,以后的工作将由系统自动完成。当系统提示你,VSS已成功安装,到此所有的安装工作已经完成。2.6VSS6.0服务器的配置和管理首先,为整个项目创建一个VSS数据库(在VSS服务器安装时,系统已经创建了一个缺省数据库Common),启动VisualSourceSafe6.0Admin(Start/Programs/MicrosoftVisualStudio6.0/MicrosoftVisualSourceSafe/VisualSourceSafe6.0Admin),跳出如图8的窗口,点击下拉菜单Tools中的CreateDatabase...菜单项,将出现如图9的窗口,选择新数据库的路径,例如创建MyApp数据库,然后点击OK按钮,系统将完成创建工作。第二步,为新创建的数据库(例如MyApp)建立用户,首先需要打开该数据库,点击下拉菜单Users/OpenSourceSafeDatabase...,然后选择数据库MyApp,打开它,如图10所示。再选择菜单项AddUser...,输入用户名和口令,如图11所示。然后依次创建其他的用户。2.6VSS6.0服务器的配置和管理第三步,在该新建的数据库中创建项目Project。启动MicrosoftVisualSourceSafe6.0(Start/Programs/MicrosoftVisualStudio6.0/MicrosoftVisualSourceSafe/MicrosoftVisualSourceSafe6.0),出现如图12的窗口,点击下拉菜单File中OpenSourceSafeDatabase...,跳出如图13的对话框,选择一个数据库(例如MyApp),双击它或按Open按钮一打开该数据库;一个项目Project是一组相关的文档或者是一个文件的集合,VSS允许你以任何的层次结构来存贮和组织你的项目。在VSS数据库中,你可以创建一个或者多个项目。点击菜单File中的命令CreateProject...,创建一个项目,例如MyProject,如图14所示;创建完项目MyProject后,需要向MyProject中添加文件,点击File中AddFiles命令,将跳出对话框,选择相应文件或目录,点击Add按钮,将它们添加到MyProject中去,如图15所示。VSS服务器的配置到此基本上已经完成了,创建了数据库和项目,并为它们建立了相应的用户,这样用户在客户端的VC等集成开发环境中就可以直接登录到VSS服务器上,进行在VSS控制管理下的开发工作。2.7在客户端的VC中使用SourceCodeControl当VSS服务器端的安装配置工作全部完成,并在客户端也完成了VSS的安装,这样就可启用VSS来管理控制整个开发小组的源代码和文档的版本管理。本节我们以应用比较广泛的VC++6.0为例来说明如何坐在客户端运用VSS,以实现所有的开发工作均处于VSS的有效的控制管理之下。2.7在客户端的VC中使用SourceCodeControl启动MicrosoftVisualC++6.0,在VC的集成开发环境中,点击File菜单的OpenWorkspace命令,跳出的对话框如图16所示,与没有安装VSS客户端软件的VC有一个明显的区别:在对话框的底部增加了一项“Openaprojectfromsourcecodecontrolsourcecontrol”。2.7在客户端的VC中使用SourceCodeControl点击sourcecontrol按钮,将跳出如图17的登录对话框,输入你的用户名和口令,通过Browse...按钮选择你要登录的数据库。如果客户端和服务器端是在同意台机器上,直接定位了刚才建立的目录的srcsafe.ini文件就可以了,如果不在同一台机器,就要从网上邻居里去找,在网上邻居里找到服务器所在的工作组,然后找到服务器,最终定位到那个共享了的目录的srcsafe.ini文件。VSS的服务器客户端是通过windows共享来实现通信的,所以请把NetBios协议安装2.7在客户端的VC中使用SourceCodeControl选择一个项目Project,在文本区输入它在本地的工作目录,VSS服务器将在该工作目录下拷贝一份源代码以供用户开发调试和修改,如图18所示。其他的操作就如同在本地开发一样,将鼠标移至VC窗口的边框,按右键选上SourceControl,就会出现SourceControl工具条。选择SourceControl工具条中的相应按钮,可以完成诸如获取某项目文件的最新版本,向VSS数据库中添加新文件,将修改后的文件Checkin提交给VSS数据库,查看某个项目文件的历史信息,进行不同版本文件及不同项目之间文件的差异比对,还有共享某个项目或文件。3VSS的基本使用操作3.1登录VSS点击VSS图标或从程序菜单中运行VisualSourceSafe6.0,即可打开VSS浏览器。用户登录,系统将提示输入进入VSS数据库的用户名、密码,并选择数据库。3.2VSS浏览器在浏览器上,可以浏览你的数据库、查看项目列表、显示文件统计信息、执行命令对文件和项目进行操作等。浏览器的最上方的标题栏是你当前连接的数据库。VSS使用符号来提供有关文件和项目信息。菜单栏的下面是常用工具栏,这里有许多常用命令的按纽,它可以帮你快速地执行对文件的操作。在项目栏中,显示有项目列表,包括特殊项目的有关信息。文件栏显示了当前项目的所有文件的列表。结果栏显示当前你所执行的操作的结果。3.3VSS基本操作3.3.1创建新的文件夹选中要创建新文件夹的项目(上级文件夹);在file菜单中选中creatproject;写入要添加的文件夹的名称,同时也可以在comment栏中为新建的文件夹添加备注;点击OK。3.3.2添加文件夹选中你要添加文件夹的项目(上级文件夹);在file菜单中选中addfiles;在文件夹列表中选中要添加的文件夹;点击add,同时可以在comment栏为你添加的文件夹做一个简单备注;如果你要连同子文件夹一起添加,选择Recursive;点击OK,成功添加了一个带有备注的文件夹。或者点击close,退出操作,返回addfiles对话框,点击close。3.3.3添加文件3.3.3.1使用add命令添加文件选中你要添加文件的文件夹;在file菜单中选中addfiles;在文件列表中选中要添加的文件;如果要添加多个文件,可以使用CTRL键或SHIFT键,同时选中多个文件;点击add,同时可以在comment栏为你添加的文件夹做一个简单备注;点击OK。3.3.3.2用拖动的方法添加文件/文件夹打开VSS浏览器,调整其大小,使得Windows资源管理器能够显示出来;打开Windows资源管理器,调整大小,使得两个浏览器可以同时显示;从Windows资源管理器中选择你要添加的文件或文件夹;拖动你所选的文件或文件夹,放入VSS浏览器,文件被添加进项目,而添加的文件夹将作为项目的子项目。3.3.4查看文件在文件列表中选中要查看的文件;在EDIT菜单中选中view,打开对话框;选中viewSourceSafe’scopyofthisfile;点击OK。3.3.5创建工作文件夹在执行签入(checkin)、签出(checkout)、撤消签出(undocheckout)、取出最新版本(getlatestversion)和文件合并(mergebranches)等命令时都必须使用工作文件夹。工作文件夹可以随时设定或修改,VSS系统中可以通过两种方式设置工作文件夹。3.3.5.1专门创建工作文件夹在VSS浏览器的文件或项目列表中选中要设置工作文件夹的文件/文件夹;在file菜单中选择setworkingfolder,打开对话框;在资源管理列表中选择或新建文件夹;点击OK。3.3.5.2利用checkout操作设置工作文件夹在对文件执行checkout操作时,如果该文件还没有设置工作文件夹,系统会提示用户为文件创建或指定工作文件夹,用户可以根据系统的提示对文件进行工作文件夹的设置。3.3.6修改和编辑文件在edit菜单中选中editfile,打开对话框;选择checkoutthisfileandedititinyourworkingfolder;点击OK。注:如果用户已经为文件设置了工作文件夹,VSS会将该文件的一个COPY放入你的工作文件夹并打开文件,让用户进行修改和编辑;如果用户还没有为文件设置工作文件夹,VSS系统会提醒用户设置工作文件夹,用户可根据系统提示,先设置工作文件夹,才可以对文件进行编辑。3.3.7移动文件/文件夹3.3.7.1移动文件你只有一种方法移动文件:将文件共享(share)到项目中,再将其从原来的项目中delete或是destroy。移动文件后,历史信息仍然有效。但是你不能用move命令来移动单个的文件。3.3.7.2移动文件夹(project)移动文件夹的具体操作步骤如下:选中要移动的文件夹;在file菜单中选中move,打开对话框;在列表中选择目标文件夹;点击OK。3.3.7.2移动文件夹(project)注:要使用移动(move)命令,必须先请管理员为你设置对移动目的项目的添加(add)权限和对源项目中文件的破坏(destroy)权限。使用移动命令你可以重新定位子文件夹,将其从一个文件夹移动到另一个文件夹中。这个命令重新定义了被移动文件夹的路径。这个命令不可以重命名文件;你只能通过执行重命名命令来实现它。这个移动命令不会改变文件夹的内容或其中子文件夹的历史信息,它只会影响到新的和旧的上级文件夹的历史信息。警告:当你移动一个文件夹之后,就不能再如实地重建其上级文件夹的早期版本。3.3.8共享文件/文件夹(share)在VSS浏览器中选择你要共享的目标项目。在SourceSafe菜单中选择share,打开共享对话框。在filetoshare列表中选择你要共享的文件,如果文件没有显示,可以旁边的项目列表中查找。点击share。点击close。3.3.9拆分文件(branch)3.3.9.1拆分被共享的文件在浏览器中选中你想要拆分的文件;在SourceSafe菜单中选择branch,打开拆分对话框;在comment中填写备注;点击OK。3.3.9.2用一步操作完成文件
的拆分与共享在VSS浏览器中选择你要branch/share的项目;在SourceSafe菜单中打开share对话框;在filetoshare列表中选择要共享的文件,如果你要的文件没有显示,在项目列表中3.3.10删除/恢复文件或文件夹如果想从VSS中移走某个文件,你必须首先确定是仅仅从项目中移走,还是从VSS数据库中移走。你还必须确定是要删除文件,但使其能够恢复,还是永久性地破坏它。VSS中有以下三种途径可以实现从数据库中移走文件。3.3.10.1删除(delete)将文件从项目中移走。该文件仍然存在于你的VSS数据库和其它共享该文件的项目中,你可以恢复它。此命令同样适用于项目。选择文件或项目;选择file菜单中的delete命令;点击OK。3.3.10.2破坏(destroy)删除(delete)对话框中有永久性破坏(theDestroyPermanently)选项,你一旦选中它,文件或项目将从VSS数据库中被移走,你不能再恢复它。此外,当Destroy和DestroyPermanently命令用于共享文件时,它只作用于当前文件夹,其它共享的文件夹仍然保留该文件,该文件依然保存在VSS数据库中。选择文件或项目;选择file菜单中的delete命令;选中DestroyPermanently选项;点击OK。3.3.10.3清除(Purge)这个命令将永久性地移走你已经删除的文件或项目,但没有破坏它。你可以使用这一命令清空你的文件或项目中的所有内容,但不能恢复它们。在VSS浏览器中选中项目;打开file菜单的properties对话框,按delete按纽;在列表中选择要清除的文件名;点击purge;如果要继续,在VSS给你的提示栏中点击yes。3.3.11查看文件/文件夹的
历史信息或早期版本在历史信息中保存有每一个文件的详细信息。在history对话框中,你不仅可以浏览到文件的版本信息、备注、以及文件的相关历史记录,也能够获取文件的某个旧版本。注:只有文件(file)可以从历史信息中checkout,文件夹(project)不能从中checkout。你还可以从历史信息对话框中执行get、checkout、diff、pin、unpin、rollback和reprot等操作。要查看历史信息:在tool菜单选中showhistory,打开historyoptions对话框;点击OK。3.3.12
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度沥青道路工程质量保修合同
- 2024年度影视制作与演员表演合同
- 2024年版二手房买卖合同
- 二零二四年度汽车维修与保养合同
- 2024版房屋买卖合同(模板)标的为城市中心住宅房产
- 二零二四年度北京市住宅买卖合同及附属协议
- 2024年度市场推广合同:营销公司为客户提供产品推广服务
- 2024版第三人民医院肉类配送服务技术培训合同
- 2024版二手吊车买卖合同
- 2024年度光伏发电项目合作合同:电站建设与运营权的转让协议
- 中国国民心理健康报告2022
- 地铁应急管理知识培训44
- 初中数学七年级上册《绝对值》说课课件 肖娜
- 中国古代建筑欣赏(最全)
- 铁路客运员(初级)理论考试复习题库汇总(含答案)
- 银行信贷业务中的法律风险防范与控制
- 高中化学-探究亚铁盐和铁盐的性质及转化教学设计学情分析教材分析课后反思
- 2023届高考写作指导:“奋斗的青春最美丽”作文讲评课件
- 项目竣工环保验收房地产验收报告
- 有机合成化学(山东联盟)知到章节答案智慧树2023年青岛科技大学
- 国家有关安全生产的方针政策法律法规
评论
0/150
提交评论