VSS相比大家都使用的十分广泛了,VSS简便快捷的特性也使得我们的协作开发变得更加容易了,尤其是VSS同微软自身开发软件的紧密集成使得它成为了Windows开发平台使用最为广泛的一个源代码协作工具。当然除了VSS之外还有很多其他的类似工具,比如CVS,还有微软内部自己使用的一个源代码协作工具(名字我忘记了,笑脸)。

    虽然VSS很简便实用,但是不能让人理解的是,如此重要的一个工具,微软竟然连续N年没有什么大的改变,反观他的兄弟们(Visual Studio Suite),却是日新月异,与时俱进,我们也使用的不亦乐乎,VSS的毫无改观的确说不过去,尤其他不能支持基于Internet的异地协作开发,就成了他的一个致命缺陷,虽然有第三方工具厂商提供支持,但是也是别手别脚的。

    终于随着VS2005的逐步推进,微软也逐渐意识到了这一点,在Visual Studio Team System中的VSS也有了很大的升级动作,我在安装了VS2005 Beta1之后就附带了VSS8,版本号是:8.0.40607.16

    VSS8主要在如下方面做了增强和提供新的支持:

1、提供了新的源代码控制模式

      A. Lock-Modify-UnLock

      B. Copy-Modify-Merge

    第一种就是我们最常使用的模式,也就是独占模式;而第二种则是允许多人修改同一个文件,最终再进行整合。

2、支持基于Internet的远程访问模式

    这个功能是我们期待已久的,我记得很早很早以前 开心就好 就曾经在微软产品意见收集的活动上提出过这个需求,当时好像很热门,好像还奖励了开心 一个什么好东东,笑脸。而这一点在开源社区的诸如CVS之类的工具中早已经实现。终于我们可以通过VSS来实现异地协同开发了。VSS8是通过Web Service来做到这一点的,这样做的好处就更大了,那就是我们可以轻易的穿透防火墙。

3、分布式团队协作增强

    比如增加了对多语种的支持;Unicode的支持(这一点经常使用VS.NET配合VSS6的人会了解到);跨时区的文件时间支持;

    当然VSS8带给我们的还有更多其他的特性,我就不再一一描述了。下面是一些VSS8特性的尝试以及同VS2005 Beta1的配合,会涉及到上面我们提到的VSS8特性。

       首先,我们需要创建一个VSS8数据库:

 

 

VSS数据库格式,我们自然选择向后兼容模式了:

 

想要支持远程访问模式吗?

 

这就是上面我们提到的源代码控制模式:

 

好了

 

打开我们烂熟于心的 srcsafe.ini 文件,我们发现增加了一些控制选项,从字面就可以了解他是做什么的:

 

在创建完毕之后我们还可以通过VSS管理工具来更改一些配置:

 

 

接下来就是看看如何将一个VS2005的项目通过远程模式加入到远端VSS数据库中,以便实现分布式协作。

开始加入远端VSS之前要设置一下VS2005

   

 

  

之后选择一个项目,还是老样子:

<  

 

   

 

 

最后有一个要注意的是,现在默认情况下VS2005会在你改动一个文件的时候自动将这个文件Check Out(如果你有权限),如果要恢复到和VS2003默认相同,只需要设置如下参数: