陋室铭
永远也不要停下学习的脚步(大道至简至易)

最近需要通过Internet来访问源代码,以前一直是使用VSS6.0D,但没有支持Internet访问功能,必须要通过第三方软件才能实现,前段时间下载了VSS2005,网上看到很多关于设置VSS2005通过Internet访问的文章,自己没有真正使用过通过Internet访问的功能,加上网上的有关文章的介绍的不够详细,有些地方俺没有仔细研究还搞不明白什么意思,这次就来一次完整的实际操作加附图做一次演示,也为一些VSS的忠实朋友们指个路。

本次配置VSS2005运行环境:Win2003/DotNet2.0

注:VSS要求iis 支持 asp.net 2.0, 因为VSS2005的运行库是2.0,如果同时有1.1,则要在IIS的设置将source safe的run-time改为2.0(asp.net2.0的run-time在安装VSS2005时自动会帮你装上)

一、VSS2005服务器的设置
1、用具有管理员权限的账房登录WEB服务器;
2、运行Visual SourceSafe Administrator Visual SourceSafe Administrator (如果还没有在WEB服务器上安装VSS2005,请先安装)在 vss administrator中建立一个新的VSS DB。然后先用本地方式打开,如D:/vss,然后在server->configure中勾上“enable sourcesafe internet for this computer"


此时VSS2005将自动在IIS中建立虚拟目录:SourceSafe

3、在资源管理器中共享vss 目录,设置好权限(Administrator取得该目录的所有权限);

4、然后在vss administrator中重新用//computer name/vss打开



点击“Add...”按钮,选取第一项“Connect to an existing database



下一步,输入Web服务器下的Vss共享目录(这里要注意一点细节,如果输入IP地址很有可能在下一步会出现一点小问题,当然如果网络没有什么问题是可以的,俺建议还是使用点击“Browse...”从网上邻居上选择刚才共享的Vss目录)

注:当然如果网络没有什么问题是可以的,俺建议还是使用点击“Browse...”从网上邻居上选择刚才共享的Vss目录
这一步超级重要

下一步,完成后打开数据库(因为需要通过INTERNET远程访问VSS,所以打开数据库时不能使用类似于D:/VSS之类的目录名,而应是//机器名/VSS数据库所在的共享名,例如://MyServer/vss,要求数据库;),再进入server->configure菜单,再勾上“enable sourcesafe internet for this database"

点击确定,此时VSS2005将自动又在在虚拟目录Sourcesafe下再建立两个虚拟目录:VssUpload_db1, VssDownload_db1

中间会有一些提示,不管他,回答yes就是了。(第一次时会提示是否需要使用SSL,如果需要可以配置使用SSL。)
IIS自动创建的虚拟目录如下(IIS下完全不需要手工建立虚拟目录):


5、为了确认是否设置好,再次打开上面的对话框,看一下“Enable SourceSafe Internet for this database”是否被选中了,如果没有则说明你没有使用“//机器名/VSS数据库所在的共享名”打开数据库,请重新采用这种方式打打再试;

二、客户端的设置(只能在VS2005中使用VSS INTERNET插件来访问上面设置好的数据库,直接使用权用VSS客户端是不可以的
1、运行VS2005;
2、选择:工具-选项,打开选项对话框
3、选中“显示所有设置”,选择:源代码管理-插件选择,在右边选择:Microsoft Visual SourceSafe(Internet)
4、选择:源代码管理-插件设置,在右边点击高级按钮会出现:

如果在服务器设定部分选择了使用SSL就选中上面的复选框,否则不选择,单击OK确定。
5、保存选项并关闭它;
6、好了,现在可以把代码添加进去了,在需要添加到VSS的项目或工程上右击,选择“将解决方案添加到源代码管理”:

点击“Add...”按钮


输入服务器IP地址或域名(俺的测试机器为192.168.1.2,如果你使用的是域名可以输入如www.web3.cn),再输入Web服务器共享的Vss文件夹格式为//compter name/vss(此地址并不是实际上你的机器要访问的地址,而是通过如http://www.web3.cn/SourceSafe/VssService.asmx



下一步,要求您输入用户和密码(此处输入的是Win系统的用户和密码,也就是刚才设置共享权限的用户,至于VSS2005的密码是另外输入的,这个要分清楚)




选中数据库,点击“Open”打开
来进行访问的,//compter name/vss地址是提供给服务器读取本地共享目录

7、单击“OK”按钮按提示就可以向VSS2005中上传源代码了(如果没有使用SSL,中间会有安全警告,不用管它,继续)

 

1. 针对问题:完成后打开数据库(因为需要通过INTERNET远程访问VSS,所以打开数据库时不能使用类似于D:\VSS之类的目录名,而应是\\机器名\VSS数据库所在的共享名,例如:\\MyServer\vss,要求数据库;),然后,再进入server->configure菜单时总是报错,报错信息是:the werver configuration settings apply only for local database.to configgure the server for this database you will need to run visual sourcesafe admin program on the machine hosting the database. "

解决方法:是在设置类似D:\VSS之类的目录共享时,把共享的权限设置为完全控制就可以了。

2. 另外在设置Web服务器下的Vss共享目录时应该注意一个细节问题(如图),否刚总是出错无法进行下去。

  

解决方法:在这一步最好是通过“Browse…”按钮从网上邻居上选择刚才共享的Vss目录,虽然最后结果都是(假设)“\\Rsj\vss“,如果你要是手动设置“\\Rsj\vss”可能就会出错(我在这点就郁闷了好长时间)。

3. 如何你已经设置完成VSS2005并测试成功后,你可能就会在VS2008连接VSS的过程中遇到下面的问题。

4. 另外还要打开服务器上IIS中服务扩展中的WebDav服务。

5. 问题:Visual SourceSafe Internet plug-in could not connect to the specified database
Secure communication using SSL needs to be enabled for this database to use your SourceSafe logon name. Otherwise the database administrator will need to create a SourceSafe user matching your network user name and allow using network names for automatic user log in

解决方法:不要忘了在设置VS2008的“插件设置”时,单击“高级”去掉“Always use SSL to connect to the server”选择

6. VS2008连接上了VSS2005,但是总是选不中项目文件,一选项目文件找打开时就又回到了我的电脑文件,这个问题是VSS2005针对VS2008的一个bug,只要下载VSS2005补丁安装就可以了,补丁下载地址:http://download.microsoft.com/download/7/1/f/71fdb660-4e69-471a-ad58-d984b45cc140/VS80-KB943847-X86-INTL.exe

7. 一切都正常后,你可能还会遇到这样的问题:隔一段时间后发现VSS2005居然连不上了,重启VSS服务器(Win2003)后,一切又正常了,检查发现是VSS的共享目录的共享功能自动取消了,这是Win2003自身的bug,只要更新或打上补丁就可以了,补丁名称为WindowsServer2003-KB921883-x86-CHS.exe,你可以到网上搜索下载。

posted on 2011-08-26 16:44  宏宇  阅读(395)  评论(0编辑  收藏  举报