VSS如何支持并行开发详细注解.doc
文本预览下载声明
前言 如今随着软件项目规模的日益增大以及项目复杂性的不断加剧,软件配置管理(SCM)的重要性已越来越受到大家的认可。许多优秀的软件配置管理工具也应运而生,使得我们能够轻松有效地管理我们的软件项目,作为这其中的一员,Microsoft Visual SourceSafe具有简单易用、方便高效、与Windows操作系统及微软开发工具高度集成等优点。我相信有相当一部分人曾经使用或者正在使用VSS,对于它的一些基本用法在这里不再赘述,本文将主要探讨Visual SourceSafe 6.0(1)中的一些高级特性,希望给大家在实际的工作过程中带来一些帮助。 我们知道随着软件规模的日益增大,软件开发周期会变得越来越长,投入的人力也会越来越多。在整个过程中,将不可避免地会产生并行开发的情况,那么在VSS中是如何支持并行开发的呢?在并行开发的过程中要注意些什么呢?这就是本文希望与大家分享的。 本文要求读者对VSS有一定的熟练程度。一些有用的设置 在讲解并行开发之前,让我们先来看看VSS中一些非常有用的系统设置,他们可以用来加强管理或者简化你的工作。首先是一些与你的项目安全管理策略有关的设置,比如是否允许multiple checkouts、是否激活项目安全机制(project security)等。还有一些是方便工作的,比设置影子目录(shadow folders)、重用上次注释、双击直接编辑文件、是否采用图形化归并等。这些你都可以在Tools-〉Options里进行设置。什么情况下会出现并行开发 不知道有没有喜欢听评书的朋友?我想一定和我一样最讨厌听到:欲知详情如何,且听下回分解。不过我们今天要讲的是另外一句话:花开两朵,各表一枝。我记得当时虽然这边打得热火朝天,大呼过瘾,但是心里总是惦记着那边怎么样啦!真恨不得有两个电台,一边是鲁智深大闹野猪林,一边是林教头风雪山神庙。那么在实际的项目开发过程中,什么时候会出现花开两朵的情况呢? 1、 你想修改项目早期版本中的某个bug。 2、 其它的小组成员占有了你希望处理的文件。你可以等他将该文件check in,或者你可以采取multiple checkouts,你还可以选择在一个分支上工作。 3、 你所做的工作涉及到许多文件,你选择一个分支流就可以避免经常打乱别人的工作。同时你可以将所有的工作测试完后再将它们集成到你的项目中。 4、 项目规定你不能够在主线上工作。相反地,项目被分成许多小的部件,每个部件是一个分支,只有该部件完成后,才会将它合并到主线中。 那我们是不是需要两个电台呢(建立两个项目)?可喜的是,VSS中提供了共享、分支等操作来解决并行开发的问题。文件共享(share files)的概念 在VSS中你可以在不同的项目之间共享文件。我们知道,在VSS的数据库中有且仅有文件的唯一拷贝--主控拷贝(master copy),因此共享文件也就是在不同的项目里建立了指向该主控拷贝的链接。如果你在其中一个项目中改变此文件,那么其他项目中所有的共享也随之改变。此外,如果选择共享某个项目中的所有文件,我们也可以称之为共享该项目。如何实现文件共享 1、 在VSS Explorer中,选择你希望在其中共享文件的项目。 2、 选择SourceSafe菜单,单击Share,或者单击右键菜单中的Share显示Share对话框。 3、 通过选择Project和File to Share下拉框来选择你准备共享的文件。 4、 点击Share. 5、 点击Close. 如果你选择的是某个项目,系统还会提示你输入新的共享项目名称。操作完成后,你会发现在当前项目中增加了刚才选择的文件。如附图一所示,我在项目$/projectname/sourcecode/client中共享了项目bugfix,操作完成后在client下增加了目录bugfix,而且我将$/bugfix项目中的network.txt文件check out出来后,项目$/projectname/sourcecode/client/bugfix中的network.txt文件也自动被check out。(见附图二)附图一:文件共享附图二:文件共享后 文件共享机制确实为我们带来了不少便利之处,它可以减少数据库中文件的数量,能够实现文件的重用。但是,文件共享机制的非各自独立性也限制了它扮演更重要的角色,真所谓成也萧何,败也萧何!分支操作(branching) 要真正地支持并行开发,就不得不用到分支操作。与共享操作不同的是,分支操作实际上是将文件放在不同的项目中来实现完全的独立性,此时在一个项目中的文件修改不会影响到其他的项目中的文件。此外,共享操作后形成的位于不同项目里的两个
显示全部