
项目管理软件
|
版本控制是工作组软件开发和文档管理中的重要方面,它能防止意外的文件丢失、允许反追踪到早期版本、并能对版本进行分支、合并和管理。在软件开发和文档管理中如果需要比较两种版本的文件或找回早期版本的文件时,版本控制是非常有用的。 现在,有很多优秀的版本控制工具供我们选择,下面就四种主流的版本控制工具做简单的介绍。 PVCS Version Manager PVCS VM PVCS VM(版本管理)是软件配置管理工具PVCS 家族中的一个组成部分。软件配置管理可以使软件开发队伍中的任何成员以一致,可重复的方式随时找回和创建应用的任何版本。 VM详细记录了一个软件系统的所有变更,包括谁做了修改,什么时候,和为什么修改。通过VM,你可以轻易地找回任何先前的修订版本,并且确信这些文件不是被忽略重写的。当你检出一个文件时,VM将阻止其他用户对该文件的修改。 通过VM,开发小组成员可以...... * 建立配置文件,能够为所有用户提供一套相同的特征,或者为不同项目提供不同的特征。 * 使用VM 特权设置每个用户的访问级别,以防止对文件和版本管理命令的未认证访问。 * 重建任何文件的任何修订。可以快速而容易地回到任一工 作文 件的先前修订。 * 用版本锁定来阻止其他用户对文件的修改,以及防止当文件更新时所造成的损失。 * 软件开发中的并行线称为分支。VM可以追踪分支并且保持开发的独立进行,这样你就可以在不影响主线的情况下跟随开发的另一线。 * 先要检出源码:开发人员需要从PVCS VM服务器上向本地工作目录中检出要进行修改的原始文件。 * 修改本地的工作源文件:开发人员在本地工作目录中修改原始文件并在本机上测试。 * 为更新数据检入修改的源文件:使用“check in”命令将修改的源文件从本地工作目录更新到PVCS VM服务器中。 ClearCase ClearCase主要应用于复杂的产品发放、分布式团队合作、并行的开发和维护任务,包括支持当今流行软件开发环境Client/Server网络结构。在激烈的市场竞争中,ClearCase的特点直接响应了软件团队的需求,如:软件生产、发布、维护等。 ClearCase在某些方式上和其它的软件配置管理系统有所不同,从本质上,ClearCase是无可比拟的,因为它包含了一套完整的软件配置管理工具而且结构透明、界面可亲。虽然ClearCase是一个可集成使用的环境,但实际上我们仍可以把ClearCase的所有特性划分为四个具体功能范畴。 Version Control ClearCase自动追踪每一个文件和目录的变更情况,通过分支和归并功能支持并行开发。在软件开发环境中,ClearCase可以对每一种对象类型(包括源代码、二进制文件、目录内容、可执行文件、文档、测试包、编译器、库文件等)实现版本控制。因而,ClearCase提供的能力远远超出资源控制,并且可以帮助团队,在开发软件时为他们所处理的每一种信息类型建立一个安全可靠的版本历史记录。 Workspace Management ClearCase给每一位开发者提供了一致性、灵活性和工作空间域(有时也称为"Sandboxes")可重用的功能。ClearCase采用一种称为View的创新技术,它可以选择所指定任务的每一个文件或目录的适当版本,并呈现它们。View可以让开发者在资源代码共享和私有代码独立的不断变更中达到平衡,从而使他们工作更有效。 Build Management ClearCase自动产生软件系统构造文档信息清单,而且可以完全、可靠的重建任何构造环境。ClearCase也可以通过共享二进制文件和并发执行多个建立脚本的方式支持有效的软件构造。 Process Control ClearCase有一个灵活、强大的功能,可以明确项目设计的流程。自动的常规日志可以监控软件被谁修改、修改了什么内容以及执行政策,如:可以通过对全体人员的不同授权来阻止某些修改的发生,无论任何时刻某一事件发生应立刻通知团队成员,对开发的进程建立一个永久记录并不断维护它。 VSS VSS(Visual Source Safe)是微软随同Visual Studio一起推出的版本控管软件,是一种源代码控制系统,它提供了完善的版本和配置管理功能,以及安全保护和跟踪检查功能。VSS通过将有关项目文档(包括文本文件、图象文件、二进制文件、声音文件、视屏文件)存入数据库进行项目研发管理工作。用户可以根据需要随时快速有效地共享文件。文件一旦被添加进VSS,它的每次改动都会被记录下来,用户可以恢复文件的早期版本,项目组的其他成员也可以看到有关文档的最新版本,并对它们进行修改,VSS也同样会将新的改动记录下来。你还会发现,用VSS来组织管理项目,使得项目组间的沟通与合作更简易而且直观。 VSS能够保存文件的多个版本,包括文件版本之间每一处微小的变动。通过版本控制实现组内合作、版本跟踪、跨平台开发、代码的再使用等。 在VSS中还可以实现一个文件被多个项目共享(share)。在一个项目中对文件的改动可以自动反映到其他共享的项目中去。这正提倡了代码重用。在file菜单中的properties中,点击link,可以查看某一文件的共享情况。 注:在其他版本控制系统中,分支是通过跟踪版本号来实现的。例如:版本“2.3.9.2”是版本2.3的第二个修订版本的第九个分支。而VSS通过明显不同的项目名称实现对文件分支的跟踪。分支就断开了共享连接,使得本项目中的文件与其他原来共享的项目无关。对此文件的修改将不会再反映到其他项目上。分支是这样被建立的:两个文件以前有着共同的历史记录,从分支开始,他们的历史记录将被VSS分别追踪。分支之后,link按纽将不再显示已断开的连接,但你可以用path(file菜单中的properties项)按纽浏览拆分的历史记录。共享(share)文件就是在多个项目间建立文件的连接。分支(branch)文件就是在项目之间建立了不同的文件路径。 VSS是存储和管理文件的工具,但是编辑和编译文件必须在VSS指定文件夹中进行。这个文件夹叫工作文件夹,它可以是现存的文件夹,也可以是VSS新建的文件夹。VSS浏览器在文件列表上方显示了文件的工作文件夹的路径。 CVS CVS是RCS的前端工具,它是用于多用户并行开发的版本控制工具,它的最大特点 是使用了“copy-modify-merge”机制而不是“lock-modify-unlock”。通过使用 CVS生成一个存储文件的仓库(repository),存储在仓库中的每个目录叫做模块 (module),在修改时将相应的模块检出到工作目录中(working directory)生成对应的目录,所有的修改都在工作目录中完成,修改完成后再提交到仓库中生成新的版本号,并加以保存。 CVS的版本编号分为系统编号和用户编号。系统编号是CVS自动给版本编的号码。CVS自动管理系统编号。单分支版本演化以1.0->1.1->1.2-...的方式顺序进行。用户编号是用户为了自己控制版本号码,或者统一版本号码,而对某一版本指定的编号。 cvs 仓库 repository 存储了用于版本控制的所有文件和目录的副本。通常,你不可以直接访问仓库里的任何文件。你使用cvs命令从仓库取得你的文件副本放到工作目录中,并对该副本进行工作。当完成了一系列修改后,你把它们提交(commit)到仓库。仓库将保存你对文件的所有修改情况,包括你做了什么样的修改和什么时候进行的修改,以及诸如此类的信息。注意,仓库不是工作目录的子目录,反之亦然。它们应该在各自独立的位置。 仓库分成两个部分。$CVSROOT/CVSROOT包含关于CVS的管理文件。其它目录才是真正包含用户定义的模块。 2、将CVS服务器上的modules取到本地工作目录 本地工作目录上,点右键 -> Checkout module 3、将新增的程序或文档纳入CVS管理 将新增的程序或文档copy到CVS本地工作目录 -> 右键 -> Add selection 或 Add selection binary(由文档类型决定) -> Commit selection 4、修改已存在程序或文档 右键 -> Edit selection -> 修改完毕 -> Commit selection 5、放弃修改 只要还未commit,右键 -> Unedit selection 当二人或更多人修改了同一文件时就会发生冲突,此时可打开有问题的文件,搜索以<<<<<<<开始的行。冲突区有这样的标价: 你要判断代码应该是什么,作必要的修改,删除cvs的标价,然后将你的修改提交到库中。建议:在修改cvs中的文件时,先Update selection一下。 7、取回以前的版本 Graph selection -> 右键 -> tag selection 。 右键 -> Editors of selection。列出正在编辑files的用户。 9、查看文件的历史修改记录 10、什么情况下需要锁定登出(checkout)? 对于word文档、函数库等二进制文件,因无法由CVS合并,应当选中锁定登出。右键 -> Lock Selection。Unreserved checkouts是CVS确省方式,允许其他用户修改被登出的文件。CVS不会告知第一个登入者是否还有人在修改文件。其他人要登入会得到错误信息,他们须先与仓库中的最新版本合并才能等入。对于源代码等,应选择非锁定登出,否则将大大降低软件生产率。如果非锁定登出造成严重的开幕冲突,那时因为开发者的沟通严重不足。 11、删除一个目录 需要先删除目录中的所以文件,使该目录成为一个空目录,然后运行cvs update -P让CVS从仓库中清除空目录。 12、重命名文件 13、CVS无法完成二进制文件的版本比较和版本合并,为此,应该避免版本分支。 14、CVS无法更据文件内容识别二进制文件,但能够根据文件扩展名来识别那些文件是二进制文件,这是由cvswrappers配置文件定义的。 15、设置只读用户 注:若点“右键”未出现以上命令,请在customize the menu下配置。有关cvs命令,可以在Admin->comand Line窗口运行 |
一共有 0 条评论