概述
VSS是一个版本控制工具。其操作比较简单,使用方便,又能达到公司的需求,所以VSS在我们公司得到了很好的应用。VSS具体的操作方法请参考《Vss使用指南》。这里只是简单的说明一下对VSS操作的一些规则。
需求
不管是程序源代码,还是资源文件,或者是其他资料,我们总是希望能从VSS中得到最新的版本,并在不需要做任何修改的情况下,在本地可以编译运行。当然,这些资源在VSS服务器上或许不在一个工程(project)下面,很有可能这个工程需要用到的资源,是从另外一个工程应用过来的。所以,要求每一个工程必须有一个资源影射列表。
工程
下面以工程为单位讲述怎样在VSS中管理我们的资源。工程就是一个功能模块。我门已经存在以下一些工程:
$/公司产品/WAP产品目录下的有:
Thirdparty工程:这个工程主要放的是一些第三方包,如APACHE的、SUN的、关于数据库连接的等等。
Ptree工程:这个工程主要放的是公司自己开发的一些包,一般以工程为单位。如COMMON包;以及该工程的一些资源文件。
Project-doc工程:该工程下放的是公司所有的文档。
$/公司产品/WAP产品/代码目录下的有:
Common工程:该工程包含了公司经常需要使用到的一些API已经源代码,还有BUILD工具的公共文件。
资源映射列表
资源映射列表就是描述服务器上的资源文件映射到本地机目录的一个描述文件。
一个工程不可能不可能是独立的,它一定使用到了其他工程的资源。假如没有一个资源映射列表,那么除了这个工程的创建着之外,没有第二个人会知道这个工程需要用到哪些资源文件。虽然,这些资源都可以放到该工程下面,但是这是一种浪费(最主要是硬盘资源的浪费)、并且对以后管理上会造成一种麻烦(如第三方包的升级,假如每个工程都使用自己的第三方包,那么要求升级的时候,很有可能造成某些工程已经使用了新的第三方包,而有些工程却没有使用新的,这样对产品集成的时候,很有可能造成这样或者那样的不必要的麻烦)。
所以,这里的资源映射列表非常重要,每个员工都必须仔细的认真的书写这个资源列表。
下面是资源映射列表的一些列子。
Thirdparty工程的资源映射列表:
$/公司产品/WAP产品/thirdparty e:devthirdparty
是否很简单。因为只有一句话就可以描述清楚了。它的意思就是将VSS服务器上“$/公司产品/WAP产品/thirdparty”目录下的所有文件映射到本地机器的“e:devthirdparty”目录,当执行get latest version操作的时候,就会把工程ThirdParty工程下的文件拷贝到目录e:devthirdparty下。
下面列举一个工程的资源映射列表:
比如有一个工程,他的名字叫demoProject。在服务器上的地址是:$/公司产品/WAP产品/代码/demoProject。那么它的映射列表很有可能是这样的:
$/公司产品/WAP产品/代码/demoProject/… e:devwapdemoProject/…
$/公司产品/WAP产品/thirdparty/jdbc/oracle/class12.jare:devthirdpartyjdbcoracleclass12.jar
$/公司产品/WAP产品/ptree/common/lib/… e:/dev/demoProject/shared/common/lib/…
$/公司产品/WAP产品/代码/common/build/build.sh e:/dev/demoProject/build/build.sh
………………
注意:一般需要描述清楚对哪个文件的映射,而不是整个目录。除非很有必要。上面的…表示对这个目录下的所有文件进行映射。
基本操作
Get latest version
就是把服务器上的资源同步到本地。第一次操作的时候,会提醒你设置本地目录,也就是设置文件映射关系,切记:文件影射关系必须按照“资源映射列表”文件中的说明。
Check in
就是把本地修改好的文件提交到服务器。提交之前必须要确认一件事情,我们称它为CODE REVIEW。执行Show Differences操作,查看你对这个文件修改了那些地方,并确认这样的修改是否正确。假如没有做过任何的修改,或者修该错误了,那么请执行Undo Check Out操作。
Check out
进行这个操作之前,请先确认你本地机是否是这个文件的最新版本,并且这个文件没有被其他人check out。
当要修改某个文件的时候,我们需要把这个文件check out。这个时候本地的文件就会从只读属性->可读写文件。切记不要在本地直接把文件从只读属性修改为可读写文件,然后进行修改。因为这样你的修改不会反应到服务器。其他人对这个文件进行get latest version操作的时候,得到的就不是你修改过的文件,而是原来错误的文件。
View
有两种VIEW方式,一种是直接VIEW:就是不把文件check out出来进行VIEW操作。一种是把文件check out到本地目录,就是等同于edit操作
Edit
EDIT操作首先将文件CHECK OUT到本地目录,文件是可读写的。
Undo Check Out
文件CHECK OUT,或进行EDIT操作之后,如果所做的修改是无用的,或者没有做过任何修改,或者不想把修改的内容提交到服务器(此时本地文件也会返回到原来版本),就进行Undo Check Out操作。对这个操作必须慎重。
Show Differences
此操作判断你对文件修改了哪些地方。它会比对最新的版本和你修改的版本,然后把不同的地方用红颜色标注出来。
Add new File
添加新的文件到VSS服务器。你可以采用拖动的方式:将你需要添加的文件拖到服务器的某个目录,这个文件就会添加到这个目录下。具体操作看《Vss使用指南》。
新建工程
新建工程是最麻烦的操作。最麻烦的就是映射列表的说明,工作简单但是琐碎。我们有个一摸版工程,供大家参考。
1 VSS概述
版本控制是工作组软件开发中的重要方面,它能防止意外的文件丢失、允许反追踪到早期版本、并能对版本进行分支、合并和管理。在软件开发和您需要比较两种版本的文件或找回早期版本的文件时,源代码的控制是非常有用的。
VisualSourceSafe 是一种源代码控制系统,它提供了完善的版本和配置管理功能,以及安全保护和跟踪检查功能。VSS通过将有关项目文档(包括文本文件、图象文件、二进制文件、声音文件、视屏文件)存入数据库进行项目研发管理工作。用户可以根据需要随时快速有效地共享文件。文件一旦被添加进VSS,它的每次改动都会被记录下来,用户可以恢复文件的早期版本,项目组的其他成员也可以看到有关文档的最新版本,并对它们进行修改,VSS也同样会将新的改动记录下来。你还会发现,用VSS来组织管理项目,使得项目组间的沟通与合作更简易而且直观。
VSS可以同 Visual Basic、Visual C++、Visual J++、Visual InterDev、Visual FoxPro 开发环境以及 MicrosoftOffice 应用程序集成在一起,提供了方便易用、面向项目的版本控制功能。Visual SourceSafe 可以处理由各种开发语言、创作工具或应用程序所创建的任何文件类型。在提倡文件再使用的今天,用户可以同时在文件和项目级进行工作。Visual SourceSafe 面向项目的特性能更有效地管理工作组应用程序开发工作中的日常任务。
[@more@]
1.1 VSS中的文件
当你要修改某个文档时,需要先从数据库中将它签出(check out),或者告诉VSS你要编辑该文档。VSS会将该文档的副本从数据库中拿到你的工作文件夹(working folder)中,你就可以修改你的文档了。如果其他用户再想对同一文档进行修改,VSS会产生一个信息,告诉他,该文档已被签出(check out),从而避免多人同时修改文档,以保证文档的安全性。
当你完成修改之后,需要将文档 签入(check in)VSS。这个操作从你的工作文件夹(working folder)中复制被你修改的文档,并将它放回VSS数据库,以便其他用户能够及时看到文档的改动。VSS能够保存文档的所有改动,并显示最新版本,同时早期版本也会被跟踪记录下来。VSS对反增量技术的运用,仅需要用很少的磁盘空间就能使得用户获取文档的所有版本。
如果你没有修改文档,你可以执行撤消签出(undo check out)命令,文档将被保存为被签出(check out)之前的状态。
如果你只需读取某一文档而并不需要编辑它,你可以执行取出(get)命令,将文档放入你的工作文件夹,再选择查看文档(view),来查看你的文档的最新版本。
1.1.1 VSS中的项目
项目(project)是指用户存储在VSS数据库中的所有文件(file)的集合。用户可以在项目之间或项目内部实现文件的添加(add)、删除(delete)、编辑(edit)、共享(share)。一个“项目(project)”在很大程度上类似于一个普通系统的的文件夹,不同的是它能更好地支持文件合并(merge)、跟踪(archive)和版本控制(version control)功能。
文件保存在VSS数据库中的项目(project)里。你无须管理存储在VSS 中的文件正本,除非你要检查或与其它拷贝进行比较。
VSS为每一位用户提供了一份备份文件放入工作文件夹(working folder),供用户对文件进行查看与编辑。尽管没有工作文件夹也可以查看文件,但要想真正实现对文档的处理,必须建立工作文件夹。
1.1.2 VSS的版本控制功能
VSS能够保存文件的多个版本,包括文件版本之间每一处微小的变动。版本控制有以下几方面的内容:
组内合作——在缺省的情况下,一般一个文件在某一时间只允许一个用户对其进行修改,这样可以防止文件意外地被其他用户改动或者覆盖。但管理员可以改动这种缺省的设置,允许文件多层签出。这种设置也能防止过多的、不必要的改动。
◆版本追踪——VSS能够对源代码和其他文件进行存储和早期版本的追踪,从而实现重建文件早期版本等有关功能。
跨平台开发——在多平台开发的情况下,版本追踪用于维护核心代码。
◆代码的再使用—— 追踪程序基准使得代码可重用。
1.1.3 文件的拆分和共享
在VSS中可以实现一个文件被多个项目共享(share)。在一个项目中对文件的改动可以自动反映到其他共享的项目中去。这正提倡了代码重用。在file菜单中的properties中,点击link,可以查看某一文件的共享情况。
拆分(branch)是将文件从原来共享的项目中分离出来的过程。它使得VSS可以实现从不同的路径追踪文件。
注:在其他版本控制系统中,分支是通过跟踪版本号来实现的。例如:版本“2.3.9.2”是版本2.3的第二个修订版本的第九个分支。而VSS通过明显不同的项目名称实现对文件分支的跟踪。
拆分文件就断开了共享连接,使得本项目中的文件与其他原来共享的项目无关。对此文件的修改将不会再反映到其他项目上。拆分是这样被建立的:两个文件以前有着共同的历史记录,从实现拆分开始,他们的历史记录将被VSS分别追踪。
拆分文件之后,link按纽将不再显示已断开的连接,但你可以用path(file菜单中的properties项)按纽浏览拆分的历史记录。
共享(share)文件就是在多个项目间建立文件的连接。拆分(branch)文件就是在项目之间建立了不同的文件路径。
1.1.4 工作文件夹(working folder)
VSS是存储和管理文件的工具,但是编辑和编译文件必须在VSS指定文件夹中进行。这个文件夹叫工作文件夹,它可以是现存的文件夹,也可以是VSS新建的文件夹。VSS浏览器在文件列表上方显示了文件的工作文件夹的路径。
在VSS系统中,工作文件夹才是你真正用于处理文档的地方。当你要编辑或修改某个文档时,必须对文档实施check out 操作(详见3.3.5修改和编辑文件),VSS将该文档从项目中拷贝出来,放入你的工作文件夹。当你修改完毕并check in 文件之后,VSS又将文件重新拷贝到数据库中以记录你的修改。
一旦你将文件签出,VSS就开始在你的本地机上创建并管理你的工作文件夹。
每一个用户、每一个项目或每一台微机都可以有自己的工作文件夹。如果Joe在项目$/SpreadSheet和$/WordProcessor上工作,他就有相应的2个不同的工作文件夹。如果Hanna在同样的项目上工作,对于每一个项目她又有自己的工作文件夹。
当你为某个项目设置了工作文件夹,你可以用它来放置你该项目中包括子项目再内的所
2 VSS的客户端安装
2.1 安装VSS的系统条件
◆ 计算机/处理器: 处理器为486DX/66MHz或以上PC机推荐Pentium或更高级的处理器。
◆ 内存:Windows 95或以后的版本要求16MB RAM (推荐32 MB);Windows NT 4.0要求24 MB (推荐32 MB)。
◆ 硬盘:客户机:典型安装:59MB; 72 MB;安装过程:66MB;
◆ 服务器:典型安装:128MB;最大安装:141MB;
◆ 附加硬盘要求:InternetExplorer:典型为43 MB,最大59 MB;MSDN:典型57MB,最大59 MB
◆ 驱动器:CD ROM
◆ 显示:VGA或更高级显示器,推荐SuperVGA。
◆ 操作系统:Microsoft Windows 95或以后版本或者MicrosoftWindows NT 4.0,NT要求Service Pack 3或更高版本(包括ServicePack 3)
◆ 外围设备/其它: Microsoft Internet Explorer 4.01 Service Pack1 (包含).
2.2 从网络安装VSS客户端
◆ 打开本地计算机的“网上邻居”属性对话框;
◆ 点击“配置”按纽;
◆ 将“MICROSOFT网络用户”的属性设置为:登录到WINDOWS NT 域,域名为PLANNING;
◆ 添加TCP/IP、NETBEUI、IPX/SPX协议;
◆ 重新启动计算机,登录“planning”域;注:管理员为每位NT用户设置的登录密码为“111”,用户在第一次登录时,计算机会提示用户修改密码。
◆ 从“网上邻居”的“planning”域中查找服务器“VSSDATA”;
◆ 打开共享的“VSS”文件夹并双击“NETSETUP”;
◆ 按照安装程序的提示开始安装。
3 VSS的基本使用操作
3.1 登录VSS
点击VSS图标或从程序菜单中运行VisualSourceSafe 6.0,即可打开VSS浏览器。
如果用户登录的VSS密码和登录PLANNING域的密码是一致的,系统将不再提示输入进入VSS数据库的密码;如果用户为VSS设置的密码与登录PLANNING域的密码不同,系统将提示用户输入VSS的登录密码。关于如何修改VSS用户密码,详见“3.2.14修改用户密码”。
3.2 VSS浏览器
当你一打开VSS,如果你设定了密码的话,它会提示你输入密码。如果你没有设定密码,你可以直接看到浏览器。在浏览器上,你可以浏览你的数据库、查看项目列表、显示文件统计信息、执行命令对文件和项目进行操作等。浏览器的最上方的标题栏是你当前连接的数据库。VSS使用符号来提供有关文件和项目信息。
菜单栏的下面是常用工具栏,这里有许多常用命令的按纽,它可以帮你快速地执行对文件的操作。
在项目栏中,显示有项目列表,包括特殊项目的有关信息。文件栏显示了当前项目的所有文件的列表。结果栏显示当前你所执行的操作的结果。
3.3 VSS基本操作
3.3.1 创建新的文件夹
◆ 选中要创建新文件夹的项目(上级文件夹);
◆ 在file菜单中选中creat project;
◆ 写入要添加的文件夹的名称,同时也可以在comment栏中为新建的文件夹添加备注;
◆ 点击OK。
3.3.2 添加文件夹
◆ 选中你要添加文件夹的项目(上级文件夹);
◆ 在file菜单中选中add files;
◆ 在文件夹列表中选中要添加的文件夹;
◆ 点击add,同时可以在comment栏为你添加的文件夹做一个简单备注;
◆ 如果你要连同子文件夹一起添加,选择Recursive;
◆ 点击OK,成功添加了一个带有备注的文件夹。或者点击close,退出操作,返回addfiles对话框,点击close。
3.3.3 添加文件
1. 使用add命令添加文件
◆ 选中你要添加文件的文件夹;
◆ 在file菜单中选中add files;
◆ 在文件列表中选中要添加的文件;如果要添加多个文件,可以使用CTRL键或SHIFT键,同时选中多个文件;
◆ 点击add,同时可以在comment栏为你添加的文件夹做一个简单备注;
◆ 点击OK。
2. 用拖动的方法添加文件/文件夹
◆ 打开VSS浏览器,调整其大小,使得Windows资源管理器能够显示出来;
◆ 打开Windows资源管理器,调整大小,使得两个浏览器可以同时显示;
◆ 从Windows资源管理器中选择你要添加的文件或文件夹;
◆ 拖动你所选的文件或文件夹,放入管理员在2009年8月13日编辑了该文章文章。