Visual SourceSafe 2005(VSS2005)与Visual Studio 2005的开发环境搭建
--------------------------------------------------------------------------------
服务器端:
安装前要先配置安装好IIS/Net Framework 20。
安装VSS2005可以自动安装Net Framework 20。
客户端(团队开发平台):
Visual Studio 2005/Visual SourceSafe 2005(VSS2005)
步骤1:安装VSS2005
安装VSS2005一路Next就OK了。服务器和客户端都要安装。
步骤2:创建VSS数据库,如果需要可以启用Internet访问
vss数据库是用来供开发团队来共享代码数据的。存放vss数据库的文件夹需要设置为共享,并设置相应用户的权限(如果是初级用户,刚开始不太会使用,可以把vss数据库的文件夹的evervyone的读写权限开启)
1、 启动Microsoft Visual SourceSafe Administrator
2、 创建VSS数据库
一路Next,OK。截图如下:
3、 启用Internet访问
vss有两种连接方式:局域网方式连接和Internet方式连接,如果选择局域网方式连接则不必操作这步。
选择菜单Server --〉Configure…,弹出Server Configuration对话框
Enable SourceSafe Internet for this computer和Enable SourceSafe Internet for this database打上勾,输入服务器的IP地址。按确定,出现错误:
系统提示要用Share路径访问。这说明vss数据库没有共享(权限不正确)。
首先到资源管理器,把VSS数据库的路径共享,设置好用户的共享访问权限。
然后再进入Microsoft Visual SourceSafe Administrator
选择菜单File --〉Open SourceSafe Database…,弹出一个对话框
点击Add…按钮,按下一步,在需要指定Location的时候输入存放vss数据库的服务器地址与路径。
最后选择新加的库,点击Open,重新选择菜单Server --〉Configure…进行配置。
中间会有一些提示,回答yes就是了。
没有提示错误的话,你的服务器端就配置好了。
4、 客户端通过Internet访问
vss有两种连接方式:局域网方式连接和Internet方式连接,如果选择局域网方式连接则不必操作这步。
安装好VSS2005
打开Visual Studio 2005
选择菜单Tools --〉 Options --〉 Source Control --〉 Plug-in Selection
选择Microsoft Visual SourceSafe (Internet)
选择菜单Tools >Options >Source Control >Plug-in Settings >Advanced…
去掉Always use SSL to connect to the server前面那个勾
随便打开一个项目,选择菜单File >Source Control >Add Project to Source Control
系统打开Open SourceSafe Database对话框
点击Add…按钮
你会发现第二步变成了要输入Address和Folder了。输入服务器的IP地址,和共享的目录名(例如:servervss)
点击Open,出现登录对话框,输入你在服务器上的账号和密码。
如果成功登录,就会出现Add to SourceSafe Internet对话框。
你就可以把项目加入Internet了。
5、 客户端通过局域网方式访问
安装好VSS2005
打开Visual Studio 2005
选择菜单Tools --〉 Options --〉 Source Control --〉 Plug-in Selection
选择Microsoft Visual SourceSafe
基本设置与第四步的Internet方式连接相似。
客户端打开vs2005,选择文件-》打开-》网站-》源代码网理-》选择你要连接的vss服务器,并输入用户名密码后就可以加载代码并进行Check out/Check in操作了。
是visio模具文件的后缀名。(呵呵,吱吱和塔塔愣是没整明白这个东东叫模具)
答:把你做好的形状往里拖就成;进去后可以修改它的名字问:怎样保存模具答:被修改过的模具标题栏右侧会有个蓝色磁盘标志,点击就成。问:保存过的模具在哪里答:如果你没改动,一般在我的文档-》我的形状文件夹里。后缀名是vss。一个模具对应1个vss。问:绘图时如何打开模具答:文件-》形状-》我的形状。问:我想把常用的形状都搁一块儿,好找
答:你可以从系统预定义的模具里拖形状到你自己的模具里
答:双击模具里的形状即可
答:有时在绘图页以外。文件-》页面设置:页面尺寸页,点“调整大小以适应绘图内容”即可。问:编辑完形状后要保存吗答:存了没用。系统会自动弹出对话框,问你要否更新形状。你答是就成。2、怎样设置形状的属性问:什么是形状的属性答:右击形状,形状-》自定义属性,看看就知道了。问:每个形状都有自定义属性吗?答:有的有,有的没有问:如何看形状的自定义属性答:2个办法。(1)右击形状,形状-》自定义属性(2)视图-》自定义属性窗口问:如何为形状添加自定义属性
答:2个办法。(1)右击形状,形状-》自定义属性。点击左下角“定义……”;(2)在自定义属性窗口上,右键菜单,“定义属性……”
答:不会。它只是帮助你记录形状的附加信息,方便你查找。比如我把热水器的XS电话记在自定义属性里,设计时不清楚它需几个插头,就看看自定义属性,打电话问。
答:用自定义属性集。(1)先为1个形状定义以上各属性;(2)自定义属性窗口上右键菜单,点自定义属性集;(3)自定义属性集窗口上点击“添加”,弹出对话框上写名称(假设取“电器产品”),选“从visio中的所选形状创建新的属性集”,确定;(4)建1个新形状,自定义属性集窗口中勾选“电器产品”,点击应用。OK,你的新形状就自动有了上述所有属性。当然属性值仍需你手工调整。本期要点回顾:
(1)建造自己的模具(2)定义自己的属性
安装教程见:参考资料的网址
使用教程:
第一步,登录到VSS服务器。启动Microsoft Visual SourceSafe60客户端(Start/Programs/Microsoft Visual Studio60/Microsoft Visual SourceSafe/Microsoft Visual SourceSafe60),出现登录窗口;
点Browse…按钮,出现对话框;
再点击Browse…按钮,选择目录(DBGROUP服务器上的共享目录,如提示输入DBGROUP服务器帐号密码则分别填写vss/vss);
单击打开按钮并在随后出现的两个对话框上单击OK和Open;
重新回到登录对话框;
输入管理员指定的用户名和密码,即登录到了VSS服务器上。
注意:不同得用户和密码设置对不同目录(project)有不同的访问权限。
第二步,如果是第一次登录到VSS服务器,还需要先设定工作目录,否则无法进行checkout操作。
工作目录的设定如下所示,选中自己相关模块的文件夹,单击右键,选择Set Working Folder…;
在弹出的对话框中选择自己所设定的工作目录并单击OK;
注意:工作目录设定完成后,服务器上的文件checkout后均放到该工作目录中,所以本地机器上的工作目录应收到保护不能随意删除移动。
第三步,checkout文件到本地工作目录中。选中相关的文件夹,单击右键并选择Check Out…;
系统弹出checkout对话框如下,单击OK后该目录下所有文件和子文件夹即checkout到了本地工作目录同时服务器上的文件被锁定呈红色,其他用户不可以再checkout该文件夹(服务器设置为不允许multicheckout)。
注意:一定要选中Recursive复选框以保证所有子文件夹被checkout。
第四步,对本地工作目录当中的文件进行修改调试。
第五步,将工作目录中的文件checkin。如果不将修改后的文件checkin则第四步中对文件的修改无法反映到服务器上项目文件的主备份中,而且极有可能导致下次checkout后本地文件被旧版本文件覆盖的情况。在VSS客户端窗口中选中要checkin的文件夹单击右键选择Check in…,弹出checkin对话框,单击OK则本地工作目录中的文件checkin到了服务器上同时服务器上的文件解除锁定(变黑)。
注意:一定要选中Recursive复选框以保证所有子文件夹被checkin。
建议1
在实际使用过程中,开发人员或者管理员有责任对服务器上的源程序和文档定期或不定期的做相应Label,以方便源程序和文档历史版本的管理。VSS可以方便的根据Label获取各个历史版本有其他获取历史版本的方式,本文推荐使用Label方法)。
添加Label。选中要添加Label的目录(project)单击右键选中Label…;
置Label对话框中填入Label名称和相关Comment,
如果要获取某一历史版本,选中相应的目录(project)并选择Show History…,如下图所示选择相应复选框并单击OK;
VSS弹出对话框,其中列出了所有管理员所作的Label,选中相应的Label,然后单击Get按钮则做Label的相应版本就会checkout到本地工作目录中。其他按钮的使用参见帮助;
建议2
开发人员请不要随意变更VSS服务器上的目录(project)结构,不要在目录(project)中随便增加删除文件,不要随便访问他人目录(project)及文件。如服务器上目录(project)结构确实需要变化请与管理员联系。
建议3
严格遵守VSS的使用规程,防止因误操作导致程序或者文档的丢失。如遇两人需同时修改统一目录(project)或文件的情况,请串行处理而非multicheckout方式处理以减少出错几率。
你好,很高兴为你解答:
VSS编辑和编译文件必须在VSS指定文件夹中进行,这个文件夹叫工作文件夹,它可以是现存的文件夹,也可以是VSS新建的文件夹。VSS浏览器在文件列表上方显示了文件的工作文件夹的路径。
当你要编辑或修改某个文档时,必须对文档实施check out 操作,VSS将该文档从项目中拷贝出来,放入你的工作文件夹。当你修改完毕并check in 文件之后,VSS又将文件重新拷贝到数据库中以记录你的修改。
一旦你将文件签出,VSS就开始在你的本地机上创建并管理你的工作文件夹。
每一个用户、每一个项目或每一台微机都可以有自己的工作文件夹。如果Joe在项目$/SpreadSheet和$/WordProcessor上工作,他就有相应的2个不同的工作文件夹。如果Hanna在同样的项目上工作,对于每一个项目她又有自己的工作文件夹。
Check Out过程:
1) 在edit菜单中选中edit file,打开对话框;
2) 选择check out this file and edit it in your working folder;
3) 点击OK。
如果用户已经为文件设置了工作文件夹,VSS会将该文件的一个COPY放入你的工作文件夹并打开文件,让用户进行修改和编辑;如果用户还没有为文件设置工作文件夹,VSS系统会提醒用户设置工作文件夹,用户可根据系统提示,先设置工作文件夹,才可以对文件进行编辑。
VSS设计与配置
一,VSS技术介绍
VSS称为虚拟交换技术,它的功能是将多台cisco catalyst 6500交换机虚拟成单台交换机,VSS使用机箱间NSF/SSO作为两台机箱间的主要高可用性机制,当一个虚拟交换机成员发生故障时,网络中无需进行协议重收敛。一个虚拟交换机成员机箱将作为主用虚拟交换机成员,另一成员将处于控制面板的热等待状态。请注意,这两个机箱的数据面板均可用,因此总流量转发能力为1440Gbps。
当一个虚拟交换机成员发生故障时,网络中无需进行协议重收敛,接入层或核心层交换机继续转发流量,因为它们只会检测出EtherChannel捆绑中有一个链路故障,所以不需要重收敛任何协议,通过VSS传输的流量不会发生任何中断。在传统模式中,一台交换机发生故障就会导致STP、HSRP和路由协议等多个控制协议进行收敛,与之相比,交换机故障时VSS机制远要出色得多。
多机箱EtherChannel(MEC)是一种L2多路径技术。这类EtherChannel形式允许相连节点在构成VSS的两个物理Cisco Catalyst 6500系列交换机间端接EtherChannel,从而创建简单的无环路L2拓扑结构。
在VSS拓扑结构中使用MEC,能使所有链路激活,并同时在不采用生成树协议的情况下,提供高度可用的拓扑结构。
二,VSS设计
默认情况下,2个VSS机箱的引擎之间的冗余机制是NSF/SSO,NSF/SSO支持状态信息和配置同步。另外, 2个VSS机箱的引擎之间只有运行在NSF/SSO模式下,备份机箱引擎的PFC卡,SwitchFabric卡和线路卡及其DFC才能是活动状态。
若主备机箱的信息不匹配(如主备机箱引擎的IOS版本不一致),则2个VSS机箱的引擎之间的冗余机制是RPR,运行在RPR模式下,只有配置能够同步,但备用机箱引擎的PFC卡,Switch Fabric卡和线路卡及其DFC卡都是非活动状态。
在2个VSS机箱之间通过 Role Resolution Protocol (RRP) 协商每个VSS机箱的角色 (active or standby)后,会执行across the VSL switches 配置的一致性以确保正确的SL操作,如下是配置一致性需要检查的条目:
另外,在NSF/SSO模式下,IOS的版本及其补丁和PFC运行模式需要一致,PFC的模式可以通过命令更改。
三,VSS基本配置
步骤一:定义VSS domain ID&switch ID
Standalone Switch 1:
SW1# config t
SW1(config)# switch virtual domain 10
SW1(config-vs-domain)# switch 1
Standalone Switch 2:
SW2# config t
SW2(config)# switch virtual domain 10
SW2(config-vs-domain)# switch 2
步骤二: Configure Priority Settings (Optional)
高优先级交换机,成为active,低优先级的交换机成为standby。若优先级一样,则Switch ID小的为active,switch ID大的为standby。
Standalone Switch 1:
SW1(config-vs-domain)# switch 1 priority 110
SW1(config-vs-domain)# switch 2 priority 100
Standalone Switch 2:
SW2(config-vs-domain)# switch 1 priority 110
SW2(config-vs-domain)# switch 2 priority 100
步骤三: Configure the Virtual Switch Link (VSL)
VSL是一个有特殊用途的EthernetChannel链路,包含一个或多个(最多8个)物理端口。VSL作用有二:
1、其中只选择一个物理成员接口作为控制链路,承载机箱之间的系统控制信息
2、这其余的物理成员接口承载网络控制信息,当必要时也可以承载普通数据流量
Standalone Switch 1:
SW1# config t
SW1(config)# interface port-channel 1
SW1(config-if)#no shut
SW1(config-if)#switch virtual link 1
SW1(config-if)#int range Ten5/4 - 5
SW1(config-if-range)#channel-group 1 mode on
Standalone Switch 2:
SW2# config t
SW2(config)# interface port-channel 2
SW2(config-if)#no shut
SW2(config-if)#switch virtual link 2
SW2(config-if)#int range Ten5/4 – 5
SW2(config-if-range)#channel-group 2 mode on
Since VSL EtherChannel uses LMP per member link, the link-aggregation protocols, such as PAgP and LACP, are not required; each member link must be configured in unconditional EtherChannel mode using the channel-group group-number mode on command
步骤4: Executing the Conversion
执行转换进程,在特权模式下执行switch convert mode virtual命令,这样做将转换端口名称为3元素形式----“interface-type switch-number/slot/port”,然后保存配置,重启设备。重启设备的作用:
1)2个配置合并为1个配置
2)为端口重新编号----从slot/port到switch-number/slot/port
3)只有重启设备,才能通过NSF/SSO协商A/S角色
Standalone Switch 1:
SW1# convert mode virtual
This command will convert all interface names
to naming convention "interface-type switch-number/slot/port",
save the running config to startup-config and
reload the switch
Do you want to proceed [yes/no]: yes
Converting interface names
Building configuration
Standalone Switch 2:
SW2# switch convert mode virtual
This command will convert all interface names
to naming convention "interface-type switch-number/slot/port",
save the running config to startup-config and
reload the switch
Do you want to proceed [yes/no]: yes
Converting interface names
Building configuration
步骤5: Completing the Conversion
最后一步需要在Active Virtual Switch上执行“switch accept mode virtual”命令自动配置Standby Virtual Switch
VSS Active Virtual Switch :
VSS# switch accept mode virtual
Do you want to proceed [yes/no]: yes
Merging the standby VSL configuration…
Building configuration
[OK]
或者在Switch 1(Active)上重新配置Switch 2的VSL
VSS Active Virtual Switch :
vss-sw1(config)#interface port-channel 2
vss-sw1(config-if)#no shut
vss-sw1(config-if)#switch virtual link 2
vss-sw1(config)#interface ten 2/5/4
vss-sw1(config-if)#channel-group 2 mode on
vss-sw1(config)#interface ten 2/5/5
vss-sw1(config-if)#channel-group 2 mode on
到此已经把两台独立的物理6500s配置成VSS,这是给新的VSS配置一个Hostname,然后保存配置。
VSS Active Virtual Switch :
vss-sw1#conf t
Enter configuration commands, one per line End with CNTL/Z
vss-sw1(config)#hostname SW65VSS
SW65VSS(config)#^Z
SW65VSS#
00:13:40: %SYS-5-CONFIG_I: Configured from console by console
SW65VSS#wr
Building configuration
00:16:23: %PFINIT-SP-5-CONFIG_SYNC: Sync'ing the startup configuration to the standby Router
[OK]
SW65VSS#
VSS状态检查
VSS Active Virtual Switch :
SW65VSS#sh switch virtual
Switch mode : Virtual Switch
Local switch number : 1
Local switch operational role: Virtual Switch Active
Peer switch number : 2
Peer switch operational role : Virtual Switch Standby
SW65VSS#sh switch virtual link
VSL Status : UP
VSL Uptime : 18:36:43 UTC Apr 6 2007
VSL SCP Ping : Pass
VSL ICC Ping : Pass
VSL Control Link : Te1/5/4
SW65VSS#sh switch virtual role
VSS—Multi-Chassis EtherChannel
PAgP Configuration and Monitoring
配置连接到接入交换机3560使用PAgP的Trunk类型的EtherChannel,建议对 MEC 链路运行 Trunk Desirable-Desirable 。
VSS Active Virtual Switch :
interface range GigabitEthernet1/3/1 ----Interface on VSS-SW1
description Access Switch Facing Interface
switchport
switchport trunk encapsulation dot1q
switchport mode dynamic desirable ----Trunk mod dynamic and desirable
switchport trunk allowed vlan 8,9 ----Only allow need VLANs for a given trunk
logging event link-status ----Logging for link status
logging event trunk-status ----Logging for trunk status
logging event bundle-status ----Logging for port-channel status
channel-protocol pagp
channel-group 202 mode desirable ----Define Port-channel, PAgP mode desirable
VSS Active Virtual Switch :
interface GigabitEthernet 2/3/1 ----Interface on VSS-SW2
description Access Switch Facing Interface
switchport
switchport trunk encapsulation dot1q
switchport mode dynamic desirable ----Trunk mod dynamic and desirable
switchport trunk allowed vlan 8,9 ----Only allow need VLANs for a given trunk
logging event link-status ----Logging for link status
logging event trunk-status ----Logging for trunk status
logging event bundle-status ----Logging for port-channel status
channel-protocol pagp
channel-group 202 mode desirable
interface Port-channel202 ----Automatically created by defining at interfaces
description Access Switch MEC
switchport
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 8,9
logging event link-status
logging event spanning-tree status ----STP logging enabled on port-channel
LACP Configuration and Monitoring
配置连接到服务器使用LACP的Trunk类型的EtherChannel,同时使能STP portfast
VSS Active Virtual Switch :
interface range GigabitEthernet1/4/40 ,GigabitEthernet2/4/40
description Server Facing Interface
no shut
switchport
logging event link-status ----Logging for link status
logging event bundle-status ----Logging for port-channel status
channel-protocol lacp
channel-group 100 mode active ----Define Port-channel, lacp mode active
interface Port-channel100 ----Automatically created by defining at interfaces
description Access Switch MEC
switchport
spanning-tree portfast
四、VSS 双活检测设计&配置
VSS Dual-Active Supervisors
VSL 链路丢失和恢复:如果 VSL 出现故障,则备用机箱无法确定活动机箱的状态。 为了确保发生切换而不出现延迟,备用机箱假设活动机箱已发生故障,并启动切换来接管活动角色。
如果原始活动机箱仍运行正常,则两个机箱此时均处于活动状态。 此情形称为双活动情形。 双活动情形会对网络稳定性产生不利影响,因为两个机箱均会使用相同的 IP 地址、SSH 密钥和 STP 网桥 ID。 虚拟交换系统 (VSS) 必须检测双活动情形,并执行恢复操作。VSS支持增强的 PAgP、 IP 双向转发检测 (BFD)和dual-active fast-hello三种方法,以便检测双活动情形。建议:如有可能,请同时启用基于 ePAgP 和直接心跳链路的 VSLP Fast Hello 方法。
Fast-Hello Configuration and Monitoring
VSS Active Virtual Switch :
SW65VSS# switch virtual domain 10
SW65VSS(config-vs-domain)# dual-active detection fast-hello
SW65VSS(config)# int gi1/4/48
SW65VSS(config-if)# dual-active fast-hello
SW65VSS(config-if)# int gi2/4/48
SW65VSS(config-if)# dual-active fast-hello
%VSDA-SW2_SPSTBY-5-LINK_UP: Interface Gi1/5/1 is now dual-active detection capable
%VSDA-SW1_SP-5-LINK_UP: Interface Gi2/5/1 is now dual-active detection capable
SW65VSS# show switch virtual dual-active fast-hello
SW65VSS# remote command standby-rp show switch virtual dual-active fast-hello
ePAgP Configuration and Monitoring
VSS Active Virtual Switch :
SW65VSS(config)# switch virtual domain 10
SW65VSS(config-vs-domain)# dual-active detection pagp trust channel-group 205
SW65VSS# show switch virtual dual-active pagp
PAgP dual-active detection enabled: Yes
PAgP dual-active version: 11
! << Snip >>
Neighbor switch that supports enhanced PAgP:
S3560# show pagp dual-active
PAgP dual-active detection enabled: Yes
PAgP dual-active version: 11
Dual-Active Detection - Exclude Interfaces
一旦检测到双活情况,原先Active交换机将会禁用其上面的所有端口以确保不影响其余网络的正常工作,然而,对于用于管理用途的端口等,我们并不希望他们也被禁用,因为管理端口被禁用后就不能远程管理该交换机。
SW65VSS#conf t
Enter configuration commands, one per line End with CNTL/Z
SW65VSS(config)#)#switch virtual domain 10
SW65VSS(config-vs-domain)#dual-active exclude interface Gig 1/5/1
SW65VSS(config-vs-domain)#dual-active exclude interface Gig 2/5/1
SW65VSS(config-vs-domain)# ^Z
SW65VSS#
我的操作系统是Vista,公司的源代码管理软件用的是VSS,在公司的时候看起来一切还好,但是我在家用***连到公司时,其它所有的软件都是正常的,唯独VSS死也连不上,每次尝试连接时,会先卡住几秒,然后连续两次弹出"Invalid handle" 的错误对话框,接着就让选断开模式了。
因为这个问题真是痛苦不已,我甚至一度先通过共享把文件拷到公司的台式机上,再远程连接台式机把文件签入VSS,这种郁闷简直是一言难尽。在网上查了很多次,似乎没人碰到这个问题,查来查去也找不到任何有用的信息。
起始找到一个名叫SourceAnyWhere的VSS插件,果然,可以解决远程签出签入了,但是我的项目本来是用VSS做源代码插件的,要想用SAW就要先更改插件,把项目的状态弄得乱七八糟,我想那就干脆把SAW做为默认选择,在公司也用它算了,但是在公司一试,大跌眼镜,它的全项目获取速度慢得想让我杀人,本来VSS全项目获取速度就够慢了,再加个SAW,又慢了不知道十几倍还是几十倍,没有任何商量的余地,淘汰SAW。
然后试用了SVN,各方面都还算满意,除了不支持文件共享,与我们现在的项目无法很好地兼容,比较伤脑筋,也因为这一点,最终我没能说服项目经理更换源代码管理软件。
转了一圈又回到原点,继续研究VSS为什么跟***合不来,因为知道别人的电脑是可以通过***访问VSS的,那么我的电脑有什么特殊性呢?关闭防火墙之流的做法早就试过了,没用,我开始想到会不会是因为Vista操作系统的关系,于是又是一通搜索,找到一个VSS2005的Update包(http://wwwmicrosoftcom/downloads/detailsaspxFamilyID=8a1a68d8-db11-417c-91ad-02aab484776b&displaylang=en),说是解决了一堆bug,并且特意提到了与VS2008和Vista的兼容性(It also improves compatibility with Visual Studio 2008 and Windows Vista ),于是抱着最后一丝希望把它下载下来,然后装到VSS服务器上,深吸一口气,重连~~~~OK了!
欢迎分享,转载请注明来源:浪漫分享网
评论列表(0条)