http://blog.csdn.net/gooddasenlin/archive/2007/11/13/1881304.aspx
2. 安装与使用范例
本节分别介绍 server 端与 client 的安装及使用。
2.1 服务器端
服务器端包含了管理工具和客户端工具的安装,相关的管理及设定工作有下列几项:
1. 安装 VSS。
2. 建立数据库(使用 Admin 管理工具)。
3. 建立 user 账户(使用 Admin 管理工具)。
4. 设定其它选项。
5. 设定 络的共享目录。
以下是各项工作的施行细节,我们会在 D:VSS_DB 目录下建立一个新的 VSS 数据库,如果你不想要建立数据库,也可以使用预设的数据库。
2.1.1安装 VSS
直接执行安装程序,安装过程中会有一个安装选项画面,其中有三个选项,分别为 SHARED DATABASE SERVER、CUSTOM、与 STAND-ALONE。请选择 SHARED DATABASE SERVER。
安装完成后,在〔开始程序集〕里面会有一个 Microsoft Visual SourceSafe 数据夹,里面有四个程序快捷方式:
Analyse & Fix VSS DB
Analyse VSS DB
Microsoft Visual SourceSafe 6.0
Visual SourceSafe 6.0 Admin
2.1.2建立数据库
开启 Visual SourceSafe 6.0 Admin,如果是第一次执行,程序会提示你要设定 Admin 账 的密码,若此时不设定,以后也可以在〔UsersChange Password〕里面变更 Admin 账 的密码。
进入 VSS Admin 之后,先点选〔ToolsCreate Database〕建立一个自己的数据库,建立数据库时会同时建立一个预设的管理员账户 ‘Admin’,此账户无法删除。
一个数据库里面可以包含多个项目,当然你可以视需要建立多个数据库,只是一次只能使用一个数据库。
假设你将数据库建立在 D:VSS_DB 目录。
2.1.3建立使用者账户
数据库建立好之后,必须先开启数据库,然后就可以为这个数据库建立 user 账 ,以便日后为各个 user 赋予适当的档案存取权限。这些 user 就是开发小组的成员。
欲开启数据库,请点选〔 UsersOpen SourceSafe Database〕或者按 Ctrl+O,然后选择上一个步骤建立的数据库,如下图:
如果之前建立的数据库没有显示在清单里面,请按右边的 Browse 钮找到该目录(此动作只需一次),然后按 Open 钮,即可开启数据库。
数据库开启后,点选〔UsersAdd User〕或按 Ctrl+A 即可新增一名使用者。
2.1.4设定其它选项
在 VSS Admin 中点选〔ToolsOptions〕即可开启选项设定窗口,其中有些设定在客户端(VSS Explorer)里面也有,而这里的设定是全域的,也就是如果客户端没有修改自己的设定,就会取用这里的设定。
建议的设定值(True/False 表示勾选/不勾选):
页夹 项目名称 设定值
General Use network name for automatic user log in True
Project Rights Enable Rights and Assignments commands True
2.1.5设定共享目录
你至少要把 server 端的两个目录分享出来给其它 络使用者存取:
1. 分享 VSS 的应用程序目录,以便客户端可以在 络上直接执行其中的 NetSetup.exe 进行安装。
2. 分享数据库所在的目录,如前面范例中的 D:VSS_DB。
注意:
如果你在分享 VSS 的应用程序目录时,把目录权限设为「只读」的话,客户端安装完后将无法自动执行 VSS(但仍可手动执行);若目录权限为「完全控制」则不会有这个现象。
2.2 客户端
2.2.1安装客户端
安装客户端程序的方法有两种:
1. 向管理员询问服务器端的 VSS 应用程序分享目录,然后直接执行该目录下的 NetSetup.exe`.
2. 利用光盘安装,安装型态选择 “Custom”,然后选择 “Client Programs”。
2.2.2开启数据库
安装完成后,执行 VSS Explorer(在「程序集」中的名称是 “Microsoft Visual SourceSafe 6.0″),第一次执行时会出现登入窗口,输入要登入的数据库名称(浏览 络上的芳邻,找到 2.1.5 节所分享出来的数据库目录),然后输入使用者名称和密码,即可登入数据库。参考下图:
VSS Admin 提供一个选项,可以在登入时自动以目前登入 Widnows 的使用者名称来登入数据库,前提是 VSS 的使用者名称要和 Windows 的使者名称相同。方法是将 VSS Admin 的〔ToolsOptions〕的 “General” 页夹中的 “Use network name for automatic user login” 项目打勾。以后再次执行 VSS Explorer 时,就会自动以该使用者名称登入,而不会出现登入画面。
2.2.3建立项目
登入数据库之后,由于是第一次执行,所以没有建立任何项目,看到的画面会像下面这张图:
左边是以树状显示的项目面板,”$/” 是 VSS 的 root project,所有的项目都是建立在此节点之下;右边会显示目前的项目的档案清单;下方状态列中则显示提示讯息、目前登入的使用者名称、档案的排序方式、以及档案数量。
以下步骤示范如何建立一个项目,该项目的档案目录已经事先建立好,位置是 “D:ProjectsDemo1″,而且该目录下已经存在所有文件和程序代码档案。
1. 在项目面板中的 $/ 节点上面点一下右键,然后点选〔Create Project…〕。在接下来开启的窗口中输入项目名称 “”Demo1″”,再按 Ok 钮即可建立项目。
2. 接着将档案加入此项目节点。做法是在项目面板中的 “”Demo1″” 节点点一下,然后点选〔FileAdd Files…〕或按 Ctrl+A。
3. 接着将项目 Demo1 目录下,要加入版本管理的子目录加进来,例如:若要加入 Src 目录,则照下图方式操作:
注意必须双击欲加入的数据夹,使其图标变成开启的样子,才是加入该数据夹。确定之后按 “”Add”” 钮即可加入,加入数据夹的窗口左下角的 “”Recursive”” 项目通常会打勾,也就是该数据夹底下的子目录也要一并加入。
Tip: 你也可以用鼠标拖曳的方式加入档案或资料夹。
Tip: 当你在加入档案时,如果临时要取消,可以按画面方状态列最左边的〔Cancel〕钮。事实上,只要是比较花时间的工作,都会出现〔Cancel〕钮让你有机会取消工作。
4. 数据夹加入之后,程序会询问你是否要将此数据夹设定为工作目录(working folder),回答 “”Yes”” 即可。参考下列画面:
此对话盒关闭后即会回加入数据夹的窗口,若不需要加入其它目录,就按 “”Close”” 钮关闭此窗口。
5. 此时画面应会显示如下图:
注意项目面板中的节点必须设定成工作目录(working folder)才能够对该目录执行 check in/check out 动作,例如此范例中的 Demo1 节点,它是我们自行建立的逻辑项目,并未设定其工作目录(也就是没有对应到实体的目录),因此当你点选 Demo1 节点时,右边面板上方的状态会显示 “”No Working Folder””。
如果你需要将 Demo1 目录底下的所有目录都纳入 VSS 管理,也可以省略步骤 1,而在步骤 2 加入档案时,直接开启 “”D:ProjectsDemo1″” 数据夹,这样就会连同 Demo1 这个目录一并加入,且同时为它设定工作目录。
2.2.4设定工作目录
建立项目之后,接着就是要设定工作目录。首先,在 VSS Explorer 的项目面板里面找到你的项目,在该项目上点一下鼠标右键,再点选〔Set Working Folder…〕,把目录指向你的本机硬盘的项目目录即可。只要父层的节点有设定工作目录,其下的子节点就不用再指定工作目录了。
设定好工作目录之后,就可以利用 VSS 执行 Check Out 或 Get 动作。如果你希望把整个项目的目录和档案都先从从服务器取回来,并且复制到你的工作目录下,你可以使用 Get;方法是在项目名称上点一下鼠标右键,再点选〔Get Latest Version…〕,此时会开启一个对话窗口,如下图所示:
注意左下角的 “”Recursive”” 项目,通常我们会希望连子目录一并取回,所以要将此项目打勾。确定之后按〔OK〕钮即可,遇到不存在的目录,VSS 会问你要不要建立,选 “”Yes All”” 即可,完成之后,你可以开启档案总管,看一下工作目录中的文件目录结构,如果执行的步骤正确,你需要的项目档案和目录 VSS 应该都已经帮你从服务器复制过来了。此动作并非必要,你可以等到你要读取或修改某个档案时,再去 Get 或 Check Out 该档案,到时候 VSS 一样会帮你建立必要的目录。
如果你希望每次取得(get)或 check out 档案时,””Recursive”” 项目都要自动勾选,你可以在〔ToolsOptions〕的 “”General”” 页夹更改这个预设设定,参考下图:
项目完成时,或者需要对现有版本进行建置与发行时,可以在服务器的计算机上开启 VSS Explorer,利用〔Get Lastest Version〕取得最新版本,你便可以在服务器端进行建置或者备份项目的工作;或者,你也可以透过影子目录(shadow folder)的功能,来达到相同的目的(参考 3.4 节)。
3. 其它功能
本节将介绍 VSS 的其它功能,包括:
多重 checkouts
档案的共享(Share)与分枝(Branch)
影子目录(Shadow Folder)
3.1 多重 checkouts
VSS 预设不允许多重 checkouts,也就是当一个档案或目录被一个使用者 check out 之后,其它使用者就不能再 check out 该档案目录。当你的小组可能为多人同时修改一个档案,或多人同时修改一个目录里面的各个档案时,可以将多重 checkouts 的功能开启。设定方法是在 VSS Admin 管理工具里面,将〔ToolsOptions〕的 “”General”” 页夹里的 “”Allow multiple checkouts”” 项目打勾。
使用多重 checkouts 时,有些值得特别注意的地方,例如:一个档案由多人同修改时,VSS 将如何处理下将说明相关的注意事项。
文字文件 v.s. 进位档
当你开启多重 checkouts 选项时,表示有可能一个档案同时由多人修改,而 VSS 能够将这些人对同一个档案的修改结果合并(merge)起来,每当一个使用者 check in 档案时,VSS 就会自动进行 merge。也由于 VSS 提供了这项功能,因此限定只有文字文件(text files)才能够多重 checkouts,二进制档案(binary files)仍然是禁止的。VSS 会自动判断档案是属于文字文件还是二进制文件(藉由搜寻二进制的 x0 字符),你也可以预先指定好哪些档案类型是二进制文件,省得 VSS 还要花时间判断;方法是:开启 VSS Admin 的〔ToolsOptions〕,切到 “”File Types”” 页夹,把二进制档案的附文件名加入 “”Binary files”” 字段里。参考下图:
其实大部分的情况下,用预设的 “”*.*”” 就行了。
合并机制
当一个档案被多人 check out 时,每当有人将该档案 check in,VSS 就会自动比对档案的差异,并且合并有差异的部分。考虑下面的场景:
1. 张三与李四都 check out 了 foo.txt 这个档案。
2. 张三修改了 foo.txt 的第 100 行,并且 check in。
3. 李四修改了 foo.txt 的第 200 行,并且在 210 行的地方加入了 5 行程序代码。
4. 李四改完了,并且 check in。
上面的例子对 VSS 来说毫无困难,它会安静地自动合并张三和李四所做的修改。但不是所有情况都这么完美,万一两个人都修改了同一行程序代码,此时 VSS 就无法替你做决定,必须由你自己决定怎样合并档案。考虑下面的场景:
1. Carol 与 Michael 都把 test.txt 取出来修改。
2. Carol 修改了第 1 行,然后 check in。
3. Michael 也修改了第 1 行,然后 check in。
这时候 VSS 无法判定到底要怎么合并,于是开启窗口显示两个版本的差异,让后面 check in 的人(Michael)决定怎么合并,参考下图:
图中分为三个面板,左上角的面板是目前服务器上的版本(上一个人 check out 的版本),右上角是本地端的版本,下方面板则是合并后的版本;此时 Michael 就可以从两个版本中观察差异的部分,决定好怎么修改后,在左边或右边面板中点鼠标右键,选择〔Apply Change〕来把要改变的内容套用到下方面板。你也可以修改下方面板的文字内容,改好后按工具列的储存钮(磁盘的图标)即可。
附带一提,你可以从 VSS Explorer 显示的画面看出一个档案是否被多人取出修改。如下图的 test.txt,在文件名称的左边有两个勾勾的图示,而 User 栏则显示最后一次 check out 的使用者名称,后面加上 “”…””。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!