VSS2005 接入 Internet 的问题

乾K大挪移 2009-11-19 05:36:09
我按照网上的教程,在vs2005中可以通过Internet接入vss2005服务器,进行版本控制。
我想问的是:
用vss2005自带的客户端程序能不能通过Internet接入vss2005服务器?没有地方让你填IP啊?
如果这样,我不是不能看到某个文件被谁签出?又被谁迁入等信息了?
谢谢
...全文
129 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
乾K大挪移 2009-11-25
  • 打赏
  • 举报
回复
没人回啦?
乾K大挪移 2009-11-23
  • 打赏
  • 举报
回复
楼上才是真正懂我意思的哈。 所以我也估计VSS2005没这个功能,想在论坛上确认一下。
dqw120 2009-11-20
  • 打赏
  • 举报
回复
VS2005 + VSS2005 的方法
步骤3就是你要的
作者:佚名 | 来自:网络 | http://www.shangdu8.com/download/Microsoft.Visual.SourceSafe.2005_01.rar

团队开发的经典组合:VS05+VSS05

这里给出VSS6.0的软件下载和其汉化文件的下载地址:
VSS6.0:http://dx.27down.com:8080/bckf/bcgj/VSS.rar
VSS6.0d汉化版:http://www.dh-hankou.com/data/vss.rar
VSS2005:ftp://222.191.250.223/down5/Microsoft.Visual.SourceSafe.2005.rar



Q:安装了VSS6/VSS2005,但是Visual Studio 2005的IDE中看不到VSS,怎么办?

A:打开菜单中的 Tools->Options 选择 SourceControl->Plug-ins

设置为
“Microsoft Visual SourceSafe ”
"Microsoft Visual SourceSafe (Internet)" (VSS 2005)

如果没有这两个选项,则运行下面的命令:

regsvr32 "C:\Program Files\Microsoft Visual SourceSafe\ssscc.dll"
regsvr32 "C:\Program Files\Microsoft Visual SourceSafe\ssapi.dll"
regsvr32 "C:\Program Files\Microsoft Visual SourceSafe\tdnamespaceextension.dll"
regsvr32 "C:\Program Files\Microsoft Visual SourceSafe\RemoteVssScc.DLL"
【假定你的VSS安装到C盘】
重起 VS2005,在上面的位置就能看到选项了。

下面还有Internet方式的

步骤0:安装前的准备事项


服务器端:

因为Internet访问是通过Web Service实现的,所以安装前要先配置安装好IIS。

安装VSS2005好像可以自动安装.Net Framework 2.0,不过,我是事先安装好.Net Framework 2.0并启用Asp.Net 2.0的。


客户端:

只有Visual Studio 2005默认支持VSS的Internet访问,所以客户端还要安装VS2005。


步骤1:安装VSS2005


安装VSS2005一路Next就OK了。服务器和客户端都要安装。


步骤2:创建VSS数据库,并启用Internet访问


这一步最关键,如果配置没问题就成功了一半。


1、 启动Microsoft Visual SourceSafe Administrator

2、 创建VSS数据库


一路Next,OK。截图如下:
















3、 启用Internet访问


选择菜单Server --〉Configure…,弹出Server Configuration对话框


给Enable SourceSafe Internet for this computer和Enable SourceSafe Internet for this database打上勾,输入服务器的IP地址。按确定,My God,不行。



系统提示要用Share路径访问。重来!
首先到资源管理器,把VSS数据库的路径共享,设置好用户的共享访问权限。
然后再进入Microsoft Visual SourceSafe Administrator
选择菜单File --〉Open SourceSafe Database…,弹出一个对话框
点击Add…按钮,按下一步,在需要指定Location的时候输入file://server/vss。


最后选择新加的库,点击Open,重新执行步骤1和2。
中间会有一些提示,不管他,回答yes就是了。
没有提示错误的话,你的服务器端就配置好了。







4、 客户端通过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地址,和共享的目录名(例如:file://server/vss)


点击Open,出现登录对话框,输入你在服务器上的账号和密码。


如果成功登录,就会出现Add to SourceSafe Internet对话框。


你就可以把项目加入Internet了。


--------------------------------------------------------------------------------

版权申明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有。

特别注意:本站有些文章来自互联网上,如某些文章侵犯了您的版权,请与站长联系,我们马上去掉。
Hiro_chen 2009-11-20
  • 打赏
  • 举报
回复
你看下这个是否有用
http://blog.csdn.net/mengyao/archive/2007/03/16/1531609.aspx
wapit 2009-11-20
  • 打赏
  • 举报
回复
刚又研究了一遍VSS这个客户端,我现在严重怀疑VSS那个客户端根本就没这功能,只有整合在VS里面的插件才有。理由如下:
1、找遍VSS客户端没发现相关选项
2、VS里面使用Internet这个插件时,文件菜单的“源代码管理->启动...”是灰色的。但不选Internet这项时这里是可以直接启动VSS客户端的。
wapit 2009-11-20
  • 打赏
  • 举报
回复
楼上没有提到楼主的问题。 楼主是像我一样的已经能通过VS2005访问了,是想直接通过VSS2005访问,不用VS2005的……
wapit 2009-11-20
  • 打赏
  • 举报
回复
自己远程登录服务器看……
软件测试的相关文档,测试代码、自动化测试程序代码均需要作为配置项,纳入到配置管理库中。vss是一个简单实用的工具,希望大家测试工作中,合理的使用vss. 1 VSS概述 版本控制是工作组软件开发中的重要方面,它能防止意外的文件丢失、允许反追踪到早期版本、并能对版本进行分支、合并和管理。在软件开发和您需要比较两种版本的文件或找回早期版本的文件时,源代码的控制是非常有用的。 Visual SourceSafe 是一种源代码控制系统,它提供了完善的版本和配置管理功能,以及安全保护和跟踪检查功能。VSS通过将有关项目文档(包括文本文件、图象文件、二进制文件、声音文件、视屏文件)存入数据库进行项目研发管理工作。用户可以根据需要随时快速有效地共享文件。文件一旦被添加进VSS,它的每次改动都会被记录下来,用户可以恢复文件的早期版本,项目组的其他成员也可以看到有关文档的最新版本,并对它们进行修改,VSS也同样会将新的改动记录下来。你还会发现,用VSS来组织管理项目,使得项目组间的沟通与合作更简易而且直观。 VSS可以同 Visual Basic、Visual C++、Visual J++、Visual InterDev、Visual FoxPro 开发环境以及 Microsoft Office 应用程序集成在一起,提供了方便易用、面向项目的版本控制功能。Visual SourceSafe 可以处理由各种开发语言、创作工具或应用程序所创建的任何文件类型。在提倡文件再使用的今天,用户可以同时在文件和项目级进行工作。Visual SourceSafe 面向项目的特性能更有效地管理工作组应用程序开发工作中的日常任务。 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.2 VSS中的项目 项目(project)是指用户存储在VSS数据库中的所有文件(file)的集合。用户可以在项目之间或项目内部实现文件的添加(add)、删除(delete)、编辑(edit)、共享(share)。一个“项目(project)”在很大程度上类似于一个普通系统的的文件夹,不同的是它能更好地支持文件合并(merge)、跟踪(archive)和版本控制(version control)功能。 文件保存在VSS数据库中的项目(project)里。你无须管理存储在VSS 中的文件正本,除非你要检查或与其它拷贝进行比较。 VSS为每一位用户提供了一份备份文件放入工作文件夹(working folder),供用户对文件进行查看与编辑。尽管没有工作文件夹也可以查看文件,但要想真正实现对文档的处理,必须建立工作文件夹。 1.3 VSS的版本控制功能 VSS能够保存文件的多个版本,包括文件版本之间每一处微小的变动。版本控制有以下几方面的内容: l 组内合作——在缺省的情况下,一般一个文件在某一时间只允许一个用户对其进行修改,这样可以防止文件意外地被其他用户改动或者覆盖。但管理员可以改动这种缺省的设置,允许文件多层签出。这种设置也能防止过多的、不必要的改动。 l 版本追踪——VSS能够对源代码和其他文件进行存储和早期版本的追踪,从而实现重建文件早期版本等有关功能。 l 跨平台开发——在多平台开发的情况下,版本追踪用于维护核心代码。 l 代码的再使用—— 追踪程序基准使得代码可重用。 1.4 文件的拆分和共享 在VSS中可以实现一个文件被多个项目共享(share)。在一个项目中对文件的改动可以自动反映到其他共享的项目中去。这正提倡了代码重用。在file菜单中的properties中,点击link,可以查看某一文件的共享情况。 拆分(branch)是将文件从原来共享的项目中分离出来的过程。它使得VSS可以实现从不同的路径追踪文件。 注:在其他版本控制系统中,分支是通过跟踪版本号来实现的。例如:版本“2.3.9.2”是版本2.3的第二个修订版本的第九个分支。而VSS通过明显不同的项目名称实现对文件分支的跟踪。 拆分文件就断开了共享连接,使得本项目中的文件与其他原来共享的项目无关。对此文件的修改将不会再反映到其他项目上。拆分是这样被建立的:两个文件以前有着共同的历史记录,从实现拆分开始,他们的历史记录将被VSS分别追踪。 拆分文件之后,link按纽将不再显示已断开的连接,但你可以用path(file菜单中的properties项)按纽浏览拆分的历史记录。 共享(share)文件就是在多个项目间建立文件的连接。拆分(branch)文件就是在项目之间建立了不同的文件路径。 1.5 工作文件夹(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的系统条件 l 计算机/处理器: 处理器为486DX/66MHz或以上PC机推荐Pentium或更高级的处理器。 l 内存:Windows 95或以后的版本要求16 MB RAM (推荐32 MB);Windows NT 4.0要求24 MB (推荐32 MB)。 l 硬盘:客户机:典型安装:59MB; 72 MB;安装过程:66 MB; l 服务器:典型安装:128 MB;最大安装:141 MB; l 附加硬盘要求:Internet Explorer:典型为43 MB,最大59 MB;MSDN:典型57MB,最大59 MB l 驱动器:CD ROM l 显示:VGA或更高级显示器,推荐Super VGA。 l 操作系统:Microsoft Windows 95或以后版本或者Microsoft Windows NT 4.0,NT要求Service Pack 3或更高版本(包括Service Pack 3〕 l 外围设备/其它: Microsoft Internet Explorer 4.01 Service Pack 1 (包含). 2.2 从网络安装VSS客户端 1) 打开本地计算机的“网上邻居”属性对话框; 2) 点击“配置”按纽; 3) 将“MICROSOFT网络用户”的属性设置为:登录到WINDOWS NT 域,域名为PLANNING; 4) 添加TCP/IP、NETBEUI、IPX/SPX协议; 5) 重新启动计算机,登录“planning”域; 注:管理员为每位NT用户设置的登录密码为“111”,用户在第一次登录时,计算机会提示用户修改密码。 6) 从“网上邻居”的“planning”域中查找服务器“VSSDATA”; 7) 打开共享的“VSS”文件夹并双击“NETSETUP”; 8) 按照安装程序的提示开始安装。 3 VSS的基本使用操作 3.1 登录VSS 点击VSS图标或从程序菜单中运行Visual SourceSafe 6.0,即可打开VSS浏览器。 如果用户登录的VSS密码和登录PLANNING域的密码是一致的,系统将不再提示输入进入VSS数据库的密码;如果用户为VSS设置的密码与登录PLANNING域的密码不同,系统将提示用户输入VSS的登录密码。关于如何修改VSS用户密码,详见“3.2.14修改用户密码”。 3.2 VSS浏览器 当你一打开VSS,如果你设定了密码的话,它会提示你输入密码。如果你没有设定密码,你可以直接看到浏览器。在浏览器上,你可以浏览你的数据库、查看项目列表、显示文件统计信息、执行命令对文件和项目进行操作等。浏览器的最上方的标题栏是你当前连接的数据库。VSS使用符号来提供有关文件和项目信息。 菜单栏的下面是常用工具栏,这里有许多常用命令的按纽,它可以帮你快速地执行对文件的操作。 在项目栏中,显示有项目列表,包括特殊项目的有关信息。文件栏显示了当前项目的所有文件的列表。结果栏显示当前你所执行的操作的结果。 3.3 VSS基本操作 3.3.1创建新的文件夹 1) 选中要创建新文件夹的项目(上级文件夹); 2) 在file菜单中选中creat project; 3) 写入要添加的文件夹的名称,同时也可以在comment栏中为新建的文件夹添加备注; 4) 点击OK。 3.3.2添加文件夹 1) 选中你要添加文件夹的项目(上级文件夹); 2) 在file菜单中选中add files; 3)在文件夹列表中选中要添加的文件夹; 4)点击add,同时可以在comment栏为你添加的文件夹做一个简单备注; 5)如果你要连同子文件夹一起添加,选择Recursive; 5) 点击OK,成功添加了一个带有备注的文件夹。或者点击close,退出操作,返回add files对话框,点击close。 3.3.3添加文件 3.3.2.1使用add命令添加文件 1)选中你要添加文件的文件夹; 2) 在fil菜单中选中add files; 3) 在文件列表中选中要添加的文件;如果要添加多个文件,可以使用CTRL键或SHIFT键,同时选中多个文件; 4)点击add,同时可以在comment栏为你添加的文件夹做一个简单备注; 5)点击OK。 3.3.2.2用拖动的方法添加文件/文件夹 1)打开VSS浏览器,调整其大小,使得Windows资源管理器能够显示出来; 2)打开Windows资源管理器,调整大小,使得两个浏览器可以同时显示; 3)从Windows资源管理器中选择你要添加的文件或文件夹; 4) 拖动你所选的文件或文件夹,放入VSS浏览器,文件被添加进项目,而添加的文件夹将作为项目的子项目。 3.3.3查看文件 1) 在文件列表中选中要查看的文件; 2) 在EDIT菜单中选中view,打开对话框; 3)选中view SourceSafe’s copy of this file; 4)点击OK。 3.3.4创建工作文件夹 在执行签入(check in)、签出(check out)、撤消签出(undo check out)、取出最新版本(get latest version)和文件合并(merge branches)等命令时都必须使用工作文件夹。工作文件夹可以随时设定或修改,VSS系统中可以通过两种方式设置工作文件夹。 3.3.4.1专门创建工作文件夹 1) 在VSS浏览器的文件或项目列表中选中要设置工作文件夹的文件/文件夹; 2) 在file菜单中选择set working folder,打开对话框; 3) 在资源管理列表中选择或新建文件夹; 4) 点击OK。 3.3.4.2利用check out操作设置工作文件夹 在对文件执行check out操作时,如果该文件还没有设置工作文件夹,系统会提示用户为文件创建或指定工作文件夹,用户可以根据系统的提示对文件进行工作文件夹的设置。 3.3.5修改和编辑文件 1) 在edit菜单中选中edit file,打开对话框; 2) 选择check out this file and edit it in your working folder; 3) 点击OK。 注:如果用户已经为文件设置了工作文件夹,VSS会将该文件的一个COPY放入你的工作文件夹并打开文件,让用户进行修改和编辑;如果用户还没有为文件设置工作文件夹,VSS系统会提醒用户设置工作文件夹,用户可根据系统提示,先设置工作文件夹,才可以对文件进行编辑。 3.3.6移动文件/文件夹 3.3.6.1移动文件 你只有一种方法移动文件:将文件共享(share)到项目中,再将其从原来的项目中delete或是destroy。移动文件后,历史信息仍然有效。但是你不能用move命令来移动单个的文件。 3.3.6.2移动文件夹(project) 注:要使用移动(move)命令,必须先请管理员为你设置对移动目的项目的添加(add)权限和对源项目中文件的破坏(destroy)权限。 使用移动命令你可以重新定位子文件夹,将其从一个文件夹移动到另一个文件夹中。这个命令重新定义了被移动文件夹的路径。 这个命令不可以重命名文件;你只能通过执行重命名命令来实现它。这个移动命令不会改变文件夹的内容或其中子文件夹的历史信息,它只会影响到新的和旧的上级文件夹的历史信息。 警告:当你移动一个文件夹之后,就不能再如实地重建其上级文件夹的早期版本。 移动文件夹的具体操作步骤如下: 1) 选中要移动的文件夹; 2) 在file菜单中选中move,打开对话框; 3) 在列表中选择目标文件夹; 4) 点击OK。 3.3.7共享文件/文件夹(share) 1) 在VSS浏览器中选择你要共享的目标项目。 2) 在SourceSafe菜单中选择share,打开共享对话框。 3) 在file to share列表中选择你要共享的文件,如果文件没有显示,可以旁边的项目列表中查找。 4) 点击share。 5) 点击close。 3.3.8拆分文件(branch) 3.3.8.1拆分被共享的文件 1) 在浏览器中选中你想要拆分的文件; 2) 在SourceSafe菜单中选择branch,打开拆分对话框; 3) 在comment中填写备注; 4) 点击OK。 3.3.8.2用一步操作完成文件的拆分与共享 1) 在VSS浏览器中选择你要branch/share的项目; 2) 在SourceSafe菜单中打开share对话框; 3) 在file to share列表中选择要共享的文件,如果你要的文件没有显示,在项目列表中 3.3.9删除/恢复文件或文件夹 如果想从VSS中移走某个文件,你必须首先确定是仅仅从项目中移走,还是从VSS数据库中移走。你还必须确定是要删除文件,但使其能够恢复,还是永久性地破坏它。 VSS中有以下三种途径可以实现从数据库中移走文件。 3.3.3.9.1删除(delete) 将文件从项目中移走。该文件仍然存在于你的VSS数据库和其它共享该文件的项目中,你可以恢复它。此命令同样适用于项目。 1) 选择文件或项目; 2) 选择file菜单中的delete命令; 3) 点击OK。 3.3.3.9.2破坏(destroy) 删除(delete)对话框中有永久性破坏(the Destroy Permanently)选项,你一旦选中它,文件或项目将从VSS数据库中被移走,你不能再恢复它。此外,当Destroy 和Destroy Permanently命令用于共享文件时,它只作用于当前文件夹,其它共享的文件夹仍然保留该文件,该文件依然保存在VSS数据库中。 1) 选择文件或项目; 2) 选择file菜单中的delete命令; 3) 选中 Destroy Permanently 选项; 4) 点击OK。 3.3.3.9.3清除(Purge) 这个命令将永久性地移走你已经删除的文件或项目,但没有破坏它。你可以使用这一命令清空你的文件或项目中的所有内容,但不能恢复它们。 1) 在VSS浏览器中选中项目; 2) 打开file菜单的properties对话框,按delete按纽; 3) 在列表中选择要清除的文件名; 4) 点击purge; 5) 如果要继续,在VSS给你的提示栏中点击yes。 3.3.10查看文件/文件夹的历史信息或早期版本 在历史信息中保存有每一个文件的详细信息。在history对话框中,你不仅可以浏览到文件的版本信息、备注、以及文件的相关历史记录,也能够获取文件的某个旧版本。 注:只有文件(file)可以从历史信息中check out,文件夹(project)不能从中check out。 你还可以从历史信息对话框中执行get、check out、diff、pin、unpin、roll back和reprot等操作。 要查看历史信息: 1) 在tool菜单选中show history,打开history options对话框; 2) 点击OK。 3.3.11获取文件的最新版本 1) 选择你要操作的文件,也可以是多个文件或某个项目; 2) 在SourceSafe菜单中选择get latest version; 3) 如果你事先没有设定工作文件夹,VSS会提示你是否设定一个工作文件夹,点击OK,设定一个工作文件夹; 4) 如果你已经确定了选项,VSS就会显示get latest version对话框,你就可以从当前的项目中获取文件的最新版本的备份,它放在你的工作文件夹中。 3.3.12获取文件的早期版本 1) 选中你要查看的文件; 2) 在tool菜单中选中show history,打开history option对话框; 3) 点击OK,打开history对话框; 4) 选中你要看的版本; 5) 点击get,打开get对话框; 6) 如果你事先没有设定工作文件夹,VSS会提示你是否设定一个工作文件夹,点击OK,设定一个工作文件夹; 7) 在取出对话框中点击OK,文件版本的备份就会从当前项目调入你的工作文件夹。 3.3.13修改用户密码 使用更改密码命令来设置或更改你的密码。要更改密码,必须首先知道当前的密码,如果你忘记了自己的密码,请与管理员联系。 登录的时候,VSS会提示你输入密码以确认你的身份。如果管理员为你设置的用户名与你的网络名是相同的,VSS将不会再提示你输入密码。 注:你的VSS的密码可以与你使用的操作系统的密码相同,也可以不同,它并不会替换你操作系统的密码。 如何更改密码: 1) 从tool菜单打开change password对话框; 2) 在旧密码框里键入你当前的密码; 3) 在新密码框里键入你的新密码; 注:密码可以设1到15个字符,它以*的形式显示; 4) 在确认框里再次键入新密码; 5) 点OK。 3.3.15打开/关闭数据库 如果你使用了VSS,你的文件和项目就会被存储在一个数据库中。它安全地保存你的信息并为你提供重要的历史信息和版本跟踪。要创建新的数据库,要与VSS管理员联系。 3.3.15.1打开现有的数据库 要运行你的VSS,你必须与存储你的文件的数据库连接。这一步通常由VSS自动完成,除非你要选择其他的数据库。如果数据库还没有安装,请与管理员联系。 1) 从file菜单,选择open SourceSafe database,打开对话框; 2) 从数据库列表中选择一个数据库; 3) 点击open,打开数据库。 3.3.15.2关闭数据库 你只能在一个数据库中进行工作。因此,如果要关闭一个数据库,只需打开另一个数据库即可。
软件测试的相关文档,测试代码、自动化测试程序代码均需要作为配置项,纳入到配置管理库中。vss是一个简单实用的工具,希望大家测试工作中,合理的使用vss. 1 VSS概述 版本控制是工作组软件开发中的重要方面,它能防止意外的文件丢失、允许反追踪到早期版本、并能对版本进行分支、合并和管理。在软件开发和您需要比较两种版本的文件或找回早期版本的文件时,源代码的控制是非常有用的。 Visual SourceSafe 是一种源代码控制系统,它提供了完善的版本和配置管理功能,以及安全保护和跟踪检查功能。VSS通过将有关项目文档(包括文本文件、图象文件、二进制文件、声音文件、视屏文件)存入数据库进行项目研发管理工作。用户可以根据需要随时快速有效地共享文件。文件一旦被添加进VSS,它的每次改动都会被记录下来,用户可以恢复文件的早期版本,项目组的其他成员也可以看到有关文档的最新版本,并对它们进行修改,VSS也同样会将新的改动记录下来。你还会发现,用VSS来组织管理项目,使得项目组间的沟通与合作更简易而且直观。 VSS可以同 Visual Basic、Visual C++、Visual J++、Visual InterDev、Visual FoxPro 开发环境以及 Microsoft Office 应用程序集成在一起,提供了方便易用、面向项目的版本控制功能。Visual SourceSafe 可以处理由各种开发语言、创作工具或应用程序所创建的任何文件类型。在提倡文件再使用的今天,用户可以同时在文件和项目级进行工作。Visual SourceSafe 面向项目的特性能更有效地管理工作组应用程序开发工作中的日常任务。 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.2 VSS中的项目 项目(project)是指用户存储在VSS数据库中的所有文件(file)的集合。用户可以在项目之间或项目内部实现文件的添加(add)、删除(delete)、编辑(edit)、共享(share)。一个“项目(project)”在很大程度上类似于一个普通系统的的文件夹,不同的是它能更好地支持文件合并(merge)、跟踪(archive)和版本控制(version control)功能。 文件保存在VSS数据库中的项目(project)里。你无须管理存储在VSS 中的文件正本,除非你要检查或与其它拷贝进行比较。 VSS为每一位用户提供了一份备份文件放入工作文件夹(working folder),供用户对文件进行查看与编辑。尽管没有工作文件夹也可以查看文件,但要想真正实现对文档的处理,必须建立工作文件夹。 1.3 VSS的版本控制功能 VSS能够保存文件的多个版本,包括文件版本之间每一处微小的变动。版本控制有以下几方面的内容: l 组内合作——在缺省的情况下,一般一个文件在某一时间只允许一个用户对其进行修改,这样可以防止文件意外地被其他用户改动或者覆盖。但管理员可以改动这种缺省的设置,允许文件多层签出。这种设置也能防止过多的、不必要的改动。 l 版本追踪——VSS能够对源代码和其他文件进行存储和早期版本的追踪,从而实现重建文件早期版本等有关功能。 l 跨平台开发——在多平台开发的情况下,版本追踪用于维护核心代码。 l 代码的再使用—— 追踪程序基准使得代码可重用。 1.4 文件的拆分和共享 在VSS中可以实现一个文件被多个项目共享(share)。在一个项目中对文件的改动可以自动反映到其他共享的项目中去。这正提倡了代码重用。在file菜单中的properties中,点击link,可以查看某一文件的共享情况。 拆分(branch)是将文件从原来共享的项目中分离出来的过程。它使得VSS可以实现从不同的路径追踪文件。 注:在其他版本控制系统中,分支是通过跟踪版本号来实现的。例如:版本“2.3.9.2”是版本2.3的第二个修订版本的第九个分支。而VSS通过明显不同的项目名称实现对文件分支的跟踪。 拆分文件就断开了共享连接,使得本项目中的文件与其他原来共享的项目无关。对此文件的修改将不会再反映到其他项目上。拆分是这样被建立的:两个文件以前有着共同的历史记录,从实现拆分开始,他们的历史记录将被VSS分别追踪。 拆分文件之后,link按纽将不再显示已断开的连接,但你可以用path(file菜单中的properties项)按纽浏览拆分的历史记录。 共享(share)文件就是在多个项目间建立文件的连接。拆分(branch)文件就是在项目之间建立了不同的文件路径。 1.5 工作文件夹(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的系统条件 l 计算机/处理器: 处理器为486DX/66MHz或以上PC机推荐Pentium或更高级的处理器。 l 内存:Windows 95或以后的版本要求16 MB RAM (推荐32 MB);Windows NT 4.0要求24 MB (推荐32 MB)。 l 硬盘:客户机:典型安装:59MB; 72 MB;安装过程:66 MB; l 服务器:典型安装:128 MB;最大安装:141 MB; l 附加硬盘要求:Internet Explorer:典型为43 MB,最大59 MB;MSDN:典型57MB,最大59 MB l 驱动器:CD ROM l 显示:VGA或更高级显示器,推荐Super VGA。 l 操作系统:Microsoft Windows 95或以后版本或者Microsoft Windows NT 4.0,NT要求Service Pack 3或更高版本(包括Service Pack 3〕 l 外围设备/其它: Microsoft Internet Explorer 4.01 Service Pack 1 (包含). 2.2 从网络安装VSS客户端 1) 打开本地计算机的“网上邻居”属性对话框; 2) 点击“配置”按纽; 3) 将“MICROSOFT网络用户”的属性设置为:登录到WINDOWS NT 域,域名为PLANNING; 4) 添加TCP/IP、NETBEUI、IPX/SPX协议; 5) 重新启动计算机,登录“planning”域; 注:管理员为每位NT用户设置的登录密码为“111”,用户在第一次登录时,计算机会提示用户修改密码。 6) 从“网上邻居”的“planning”域中查找服务器“VSSDATA”; 7) 打开共享的“VSS”文件夹并双击“NETSETUP”; 8) 按照安装程序的提示开始安装。 3 VSS的基本使用操作 3.1 登录VSS 点击VSS图标或从程序菜单中运行Visual SourceSafe 6.0,即可打开VSS浏览器。 如果用户登录的VSS密码和登录PLANNING域的密码是一致的,系统将不再提示输入进入VSS数据库的密码;如果用户为VSS设置的密码与登录PLANNING域的密码不同,系统将提示用户输入VSS的登录密码。关于如何修改VSS用户密码,详见“3.2.14修改用户密码”。 3.2 VSS浏览器 当你一打开VSS,如果你设定了密码的话,它会提示你输入密码。如果你没有设定密码,你可以直接看到浏览器。在浏览器上,你可以浏览你的数据库、查看项目列表、显示文件统计信息、执行命令对文件和项目进行操作等。浏览器的最上方的标题栏是你当前连接的数据库。VSS使用符号来提供有关文件和项目信息。 菜单栏的下面是常用工具栏,这里有许多常用命令的按纽,它可以帮你快速地执行对文件的操作。 在项目栏中,显示有项目列表,包括特殊项目的有关信息。文件栏显示了当前项目的所有文件的列表。结果栏显示当前你所执行的操作的结果。 3.3 VSS基本操作 3.3.1创建新的文件夹 1) 选中要创建新文件夹的项目(上级文件夹); 2) 在file菜单中选中creat project; 3) 写入要添加的文件夹的名称,同时也可以在comment栏中为新建的文件夹添加备注; 4) 点击OK。 3.3.2添加文件夹 1) 选中你要添加文件夹的项目(上级文件夹); 2) 在file菜单中选中add files; 3)在文件夹列表中选中要添加的文件夹; 4)点击add,同时可以在comment栏为你添加的文件夹做一个简单备注; 5)如果你要连同子文件夹一起添加,选择Recursive; 5) 点击OK,成功添加了一个带有备注的文件夹。或者点击close,退出操作,返回add files对话框,点击close。 3.3.3添加文件 3.3.2.1使用add命令添加文件 1)选中你要添加文件的文件夹; 2) 在fil菜单中选中add files; 3) 在文件列表中选中要添加的文件;如果要添加多个文件,可以使用CTRL键或SHIFT键,同时选中多个文件; 4)点击add,同时可以在comment栏为你添加的文件夹做一个简单备注; 5)点击OK。 3.3.2.2用拖动的方法添加文件/文件夹 1)打开VSS浏览器,调整其大小,使得Windows资源管理器能够显示出来; 2)打开Windows资源管理器,调整大小,使得两个浏览器可以同时显示; 3)从Windows资源管理器中选择你要添加的文件或文件夹; 4) 拖动你所选的文件或文件夹,放入VSS浏览器,文件被添加进项目,而添加的文件夹将作为项目的子项目。 3.3.3查看文件 1) 在文件列表中选中要查看的文件; 2) 在EDIT菜单中选中view,打开对话框; 3)选中view SourceSafe’s copy of this file; 4)点击OK。 3.3.4创建工作文件夹 在执行签入(check in)、签出(check out)、撤消签出(undo check out)、取出最新版本(get latest version)和文件合并(merge branches)等命令时都必须使用工作文件夹。工作文件夹可以随时设定或修改,VSS系统中可以通过两种方式设置工作文件夹。 3.3.4.1专门创建工作文件夹 1) 在VSS浏览器的文件或项目列表中选中要设置工作文件夹的文件/文件夹; 2) 在file菜单中选择set working folder,打开对话框; 3) 在资源管理列表中选择或新建文件夹; 4) 点击OK。 3.3.4.2利用check out操作设置工作文件夹 在对文件执行check out操作时,如果该文件还没有设置工作文件夹,系统会提示用户为文件创建或指定工作文件夹,用户可以根据系统的提示对文件进行工作文件夹的设置。 3.3.5修改和编辑文件 1) 在edit菜单中选中edit file,打开对话框; 2) 选择check out this file and edit it in your working folder; 3) 点击OK。 注:如果用户已经为文件设置了工作文件夹,VSS会将该文件的一个COPY放入你的工作文件夹并打开文件,让用户进行修改和编辑;如果用户还没有为文件设置工作文件夹,VSS系统会提醒用户设置工作文件夹,用户可根据系统提示,先设置工作文件夹,才可以对文件进行编辑。 3.3.6移动文件/文件夹 3.3.6.1移动文件 你只有一种方法移动文件:将文件共享(share)到项目中,再将其从原来的项目中delete或是destroy。移动文件后,历史信息仍然有效。但是你不能用move命令来移动单个的文件。 3.3.6.2移动文件夹(project) 注:要使用移动(move)命令,必须先请管理员为你设置对移动目的项目的添加(add)权限和对源项目中文件的破坏(destroy)权限。 使用移动命令你可以重新定位子文件夹,将其从一个文件夹移动到另一个文件夹中。这个命令重新定义了被移动文件夹的路径。 这个命令不可以重命名文件;你只能通过执行重命名命令来实现它。这个移动命令不会改变文件夹的内容或其中子文件夹的历史信息,它只会影响到新的和旧的上级文件夹的历史信息。 警告:当你移动一个文件夹之后,就不能再如实地重建其上级文件夹的早期版本。 移动文件夹的具体操作步骤如下: 1) 选中要移动的文件夹; 2) 在file菜单中选中move,打开对话框; 3) 在列表中选择目标文件夹; 4) 点击OK。 3.3.7共享文件/文件夹(share) 1) 在VSS浏览器中选择你要共享的目标项目。 2) 在SourceSafe菜单中选择share,打开共享对话框。 3) 在file to share列表中选择你要共享的文件,如果文件没有显示,可以旁边的项目列表中查找。 4) 点击share。 5) 点击close。 3.3.8拆分文件(branch) 3.3.8.1拆分被共享的文件 1) 在浏览器中选中你想要拆分的文件; 2) 在SourceSafe菜单中选择branch,打开拆分对话框; 3) 在comment中填写备注; 4) 点击OK。 3.3.8.2用一步操作完成文件的拆分与共享 1) 在VSS浏览器中选择你要branch/share的项目; 2) 在SourceSafe菜单中打开share对话框; 3) 在file to share列表中选择要共享的文件,如果你要的文件没有显示,在项目列表中 3.3.9删除/恢复文件或文件夹 如果想从VSS中移走某个文件,你必须首先确定是仅仅从项目中移走,还是从VSS数据库中移走。你还必须确定是要删除文件,但使其能够恢复,还是永久性地破坏它。 VSS中有以下三种途径可以实现从数据库中移走文件。 3.3.3.9.1删除(delete) 将文件从项目中移走。该文件仍然存在于你的VSS数据库和其它共享该文件的项目中,你可以恢复它。此命令同样适用于项目。 1) 选择文件或项目; 2) 选择file菜单中的delete命令; 3) 点击OK。 3.3.3.9.2破坏(destroy) 删除(delete)对话框中有永久性破坏(the Destroy Permanently)选项,你一旦选中它,文件或项目将从VSS数据库中被移走,你不能再恢复它。此外,当Destroy 和Destroy Permanently命令用于共享文件时,它只作用于当前文件夹,其它共享的文件夹仍然保留该文件,该文件依然保存在VSS数据库中。 1) 选择文件或项目; 2) 选择file菜单中的delete命令; 3) 选中 Destroy Permanently 选项; 4) 点击OK。 3.3.3.9.3清除(Purge) 这个命令将永久性地移走你已经删除的文件或项目,但没有破坏它。你可以使用这一命令清空你的文件或项目中的所有内容,但不能恢复它们。 1) 在VSS浏览器中选中项目; 2) 打开file菜单的properties对话框,按delete按纽; 3) 在列表中选择要清除的文件名; 4) 点击purge; 5) 如果要继续,在VSS给你的提示栏中点击yes。 3.3.10查看文件/文件夹的历史信息或早期版本 在历史信息中保存有每一个文件的详细信息。在history对话框中,你不仅可以浏览到文件的版本信息、备注、以及文件的相关历史记录,也能够获取文件的某个旧版本。 注:只有文件(file)可以从历史信息中check out,文件夹(project)不能从中check out。 你还可以从历史信息对话框中执行get、check out、diff、pin、unpin、roll back和reprot等操作。 要查看历史信息: 1) 在tool菜单选中show history,打开history options对话框; 2) 点击OK。 3.3.11获取文件的最新版本 1) 选择你要操作的文件,也可以是多个文件或某个项目; 2) 在SourceSafe菜单中选择get latest version; 3) 如果你事先没有设定工作文件夹,VSS会提示你是否设定一个工作文件夹,点击OK,设定一个工作文件夹; 4) 如果你已经确定了选项,VSS就会显示get latest version对话框,你就可以从当前的项目中获取文件的最新版本的备份,它放在你的工作文件夹中。 3.3.12获取文件的早期版本 1) 选中你要查看的文件; 2) 在tool菜单中选中show history,打开history option对话框; 3) 点击OK,打开history对话框; 4) 选中你要看的版本; 5) 点击get,打开get对话框; 6) 如果你事先没有设定工作文件夹,VSS会提示你是否设定一个工作文件夹,点击OK,设定一个工作文件夹; 7) 在取出对话框中点击OK,文件版本的备份就会从当前项目调入你的工作文件夹。 3.3.13修改用户密码 使用更改密码命令来设置或更改你的密码。要更改密码,必须首先知道当前的密码,如果你忘记了自己的密码,请与管理员联系。 登录的时候,VSS会提示你输入密码以确认你的身份。如果管理员为你设置的用户名与你的网络名是相同的,VSS将不会再提示你输入密码。 注:你的VSS的密码可以与你使用的操作系统的密码相同,也可以不同,它并不会替换你操作系统的密码。 如何更改密码: 1) 从tool菜单打开change password对话框; 2) 在旧密码框里键入你当前的密码; 3) 在新密码框里键入你的新密码; 注:密码可以设1到15个字符,它以*的形式显示; 4) 在确认框里再次键入新密码; 5) 点OK。 3.3.15打开/关闭数据库 如果你使用了VSS,你的文件和项目就会被存储在一个数据库中。它安全地保存你的信息并为你提供重要的历史信息和版本跟踪。要创建新的数据库,要与VSS管理员联系。 3.3.15.1打开现有的数据库 要运行你的VSS,你必须与存储你的文件的数据库连接。这一步通常由VSS自动完成,除非你要选择其他的数据库。如果数据库还没有安装,请与管理员联系。 1) 从file菜单,选择open SourceSafe database,打开对话框; 2) 从数据库列表中选择一个数据库; 3) 点击open,打开数据库。 3.3.15.2关闭数据库 你只能在一个数据库中进行工作。因此,如果要关闭一个数据库,只需打开另一个数据库即可。
构建安全的新型软件定义网络 技术创新 变革未来 构建安全的新型软件定义网络全文共16页,当前为第1页。 新接口,新设备,新数据 SU MMI T 构建安全的新型软件定义网络全文共16页,当前为第2页。 IT OT CT IT/CT/OT 围绕数据融合 SU MMI T 构建安全的新型软件定义网络全文共16页,当前为第3页。 复杂网络环境对数据传输带来挑战 复杂性: 构建安全的新型软件定义网络全文共16页,当前为第4页。 复杂的连接环境带来的数据安全挑战 安全性: 构建安全的新型软件定义网络全文共16页,当前为第5页。 应对:数据与应用驱动的新型安全软件定义网络 敏捷和灵活性 构建安全的新型软件定义网络全文共16页,当前为第6页。 云端 SD-WAN:化繁为简 构建安全的新型软件定义网络全文共16页,当前为第7页。 VSN解决方案 Remote Office 1 Remote Office 2 Cloud Servers Remote Worker Desktop Remote Worker Laptop Remote Worker Phone Remote Worker Tablet 纯软件版本-管理部署简便-可加密 传输并支持全MESH结构SD-WAN 网络 VSN Lite VSN 功能全面的SD-WAN 产品-覆盖了从云网络边缘接入到智能编排、应用驱动网络等的全部需求。 MPLS Internet 4G /LTE VSS VSS VSB VSB VSB VSB Controllers VSA VSM VSE Log information Distribution of configuration information Device Authentication 构建安全的新型软件定义网络全文共16页,当前为第8页。 VSN Lite:用于数据传输的 -MESH SD-WAN Branch 1 Branch 2 HQ Cloud Servers Remote Worker Desktop Remote Worker Laptop Remote Worker Phone Remote Worker Tablet VPN MPLS MPLS MPLS VPN VPN VPN VPN Hacker Remote Office 1 Cloud Servers Remote Worker Desktop Remote Worker Laptop Remote Worker Phone Remote Worker Tablet VSN Virtual Security Broker VSN Client SU MMI T VSN Client VSN Client VSN Client VSN Client Remote Office 2 VSN Client VSN Client 构建安全的新型软件定义网络全文共16页,当前为第9页。 VSN Lite:用于数据传输的全MESH SD-WAN 随时随地管理您 的 VSN 激活软件使用许可 SU MMI T 构建安全的新型软件定义网络全文共16页,当前为第10页。 VSN:端到端的云 SD-WAN MPLS Internet 4G LTE VSA:授权 VSS VSS VSB VSB VSB VSB Controller4 VSA VSM 由 VSVSB 建立的安全通道 VSE VSE:边缘设备 VSS:网络流量交换 VSM:设备管理 VSB:Network Broker 日志信息 SU MMI T 配置信息下发 设备授权 构建安全的新型软件定义网络全文共16页,当前为第11页。 SD WAN 边缘: 安全与智能接入 公有云 私有云 传输服务 (MPLS, Br-adba,d , LTE) SU MMI T 构建安全的新型软件定义网络全文共16页,当前为第12页。 应用场景:物联网接入 在任意地点通过VSN 网络接入并监控智能设备 轻松横跨多个物理网络 通过VSN 连接为 IoT 数据传输加速 集中化管理减少 IoT 成本 隐藏I据传输保证安全 保证私密安全的物联网通信 IOT Server IOT Server IOT Server VSN 1 VSN 2 VSN 3 ATM 智能收银 智能物流 监控设备 智能医疗 智能2车 智能闸M V SU MMI T SN 构建安全的新型软件定义网络全文共16页,当前为第13页。 应用场景:分支机构组网 VSN Backbon/ D/t/ Center ISP/CSP 4GLTE/SG Public Cloud Internet L/r4e Store D/t/ Room Store-in- Store Hybrid SD-WAN
笔者有幸接触过以下几种常用的配置管理工具:VSS、SVN、Clearcase,在此做一个小小的总结,并Ctrl+C了以前一些网友的对比评论,不一定准确,只是希望通过这些总结对自己和初学者有所帮助。如果想进一步了解这些工具,请baidu和google,如果想深入了解,敬请到图书馆借书并实践。一、 Visual Source Safe( 简称 VSS )VSS是微软的产品,是配置管理的一种很好的入门级的工具。VSS最初的名字叫Source Safe,是一家小公司的产品,92年曾经获了最佳小型管理工具奖,然后立即被微软收购。但是微软收购的只是source safe的Windows版本,在美国还有另外两家公司分别获得了继续开发和销售source safe的Mac版本和Unix版本的许可,在MS买进vss之后,基本上没有对vss进行任何的研发,MS内部自身也不用vss。SourceSafe长得很象早先土气的文件管理器,的确难看。但是难看不碍事,SourceSafe的优点可以用8个字来概括“简单易用,一学就会”,这个优点是它老妈Microsoft遗传下来的,是天生的。虽然SourceSafe并不是免费的,但是在国内人们以接近于零的成本得到它,网上到处可以下载啊。当然Microsoft也不在乎这个小不点的软件,它属于“买大件送小件”的角色。如果你合法地得到Visual Studio,你就得到了免费的SourceSafe。评价如下:易用性:★★★★★易学易用是 VSS 的强项, VSS 采用标准的 windows 操作界面,只要对微软的产品熟悉,就能很快上手。 VSS 的安装和配置非常简单,对于该产品,不需要外部的培训(可以为公司省去一笔不菲的费用)。只要参考微软完备的随机文档,就可以很快的用到实际的工程当中。功能:★★★VSS 的配置管理的功能比较基本,提供文件的版本跟踪功能,对于 build 和基线的管理, VSS 的打标签的功能可以提供支持。 VSS 提供 share (共享 ) 、 branch( 分支)和合并( merge) 的功能,对于团队的开发进行支持。 VSS 不提供对流程的管理功能,如对变更的流程进行控制。 VSS 不能提供对异地团队开发的支持。此外 VSS 只能在 windows 平台上运行,不能运行在其他操作系统上。安全性:★★★VSS 的安全性不高,对于 VSS 的用户,可以在文件夹上设置不可读,可读,可读 / 写 , 可完全控制四级权限。但由于 VSS 的文件夹是要完全共享给用户后,用户才能进入,所以用户对 VSS 的文件夹都可以删除。这一点也是 VSS 的一个比较大的缺点。总体成本:★★★★VSS 没有采用对许可证进行收费的方式,只要安装了 VSS ,对用户的数目是没有限制的。因此使用 VSS 的费用是较低的。技术支持:★★★★★由于 VSS 是微软的产品,可以得到稳定的技术支持。二、 SVN(Subversion) - CVS(Concurrent Version System)的替代和升级版本先说说CVS,CVS是开源代码的配置管理工具,其源代码和安装文件都可以免费下载。记得在学校读研的时候,学校实验室的代码全部都用CVS管理,为啥?很简单,两个字:免费!它与Eclipse配合,基本上Java的代码编写,代码管理和版本管理都可以“免费”搞定了。SVN(Subversion)是近年来崛起的版本管理工具,被誉为cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。虽然在 2006年时SVN的使用族群仍然远少于传统的CVS,但已经有许多开放源码团体决定将CVS转换为SVN。已经转换使用SVN的包括了 FreeBSD、Apache Software Foundation、KDE、GNOME、GCC、Python、Samba、Mono 以及许多团体。许多开发团队换用SVN是因为 Trac、SourceForge、CollabNet、CodeBeamer等专案协同作业软件以及Eclipse、NetBeans等IDE提供SVN的支援整合。 除此之外,一些自由软件开发的协作网如SourceForge.net除了提供CVS外,现在也提供专案开发者使用SVN作为原码管理系统,JavaForge、Google Code以及 BountySource 则以SVN作为官方的源码管理系统。2009年,绝大多数CVS服务已经改用SVN。CVS已经停止维护。易用性 : ★★★★Subversion支持linux和windows,更多是安装在linux下。svn服务器有2种运行方式:独立服务器和借助apache。2种方式各有利弊。目前业界评价的SVN易用性正在提高。功能:★★★★SVN 的功能除具备 VSS 的功能外,还具有:它的客户机 / 服务器存取方法使得开发者可以从任何因特网的接入点存取最新的代码;它的无限制的版本管理检出 (checkout :注 1)的模式避免了通常的因为排它检出模式而引起的人工冲突;它的客户端工具可以在绝大多数的平台上使用。同样, SVN 也不提供对变更流程的自动管理功能。安全性:★★★★一般来说, SVN 的权限设置单一,无法完成复杂的权限控制;但是 SVN 通过 SVN ROOT 目录下的脚本,提供了相应功能扩充的接口,不但可以完成精细的权限控制,还能完成更加个性化的功能。总体成本:★★★★★SVN 是开发源码软件,无需支付购买费用。技术支持:★★★同样因为 SVN 是开发源码软件,没有生产厂家为其提供技术的支持。如发现问题,通常只能靠自己查找网上的资料进行解决。三、 ClearCaseRational公司的ClearCase是软件行业公认的功能最强大、价格最昂贵的配置管理软件。ClearCase主要应用于复杂产品的并行开发、发布和维护,其功能划分为四个范畴:版本控制、工作空间管理(Workspace Management)、构造管理(Build Management)、过程控制(Process Control)。ClearCase通过TCP/IP来连接客户端和服务器。另外,ClearCase拥有的浮动License可以跨越UNIX和 Windows NT平台被共享。ClearCase的功能比CVS、SourceSafe强大得多,但是其用户量却远不如CVS、SourceSafe的多。主要原因是:ClearCase价格昂贵,如果没有批量折扣的话,每个License大约5000美元。对于中国用户而言,这无疑是天价。用户只有经过几天的培训后(费用同样很昂贵),才能正常使用ClearCase。如果不参加培训的话,用户基本上不可能无师自通。易用性:★★★ClearCase 的安装和维护远比 VSS 复杂,要成为一个合格的 ClearCase 的系统管理员,需要接收专门的培训。 ClearCase 提供命令行和图形界面的操作方式,但从 ClearCase 的图形界面不能实现命令行的所有功能。如果Unix/Linux服务器上安装了Samba服务,可以直接通过Windows下Clearcase的客户端直接访问源代码,相对比较简单。功能:★★★★★ClearCase 提供 VSS, SVN所支持的功能,但不提供变更管理的功能。 Rational 另提供了 ClearQuest 工具提供对变更管理的功能,与 VSS不同, ClearCase 后台的数据库是专有的结构。 ClearCase 对于 windows 和 unix 平台都提供支持。 ClearCase 通过多点复制支持多个服务器和多个点的可扩展性,并擅长设置复杂的开发过程。安全性:★★★★ClearCase 的权限设置功能与 SVN 相比, SVN 有独立的安全管理机制, ClearCase 没有专用的安全性管理机制,依赖于操作系统。总体成本:★★要选用 ClearCase ,需要考虑的费用除购买 license 的费用外,还有必不可少的技术服务费用,没有 Rational 公司的专门的技术服务,很难发挥出 ClearCase 的威力。如现在网上虽有 ClearCase 的破解软件,但尝试应用的公司大多失败的缘故。另外,对于 web 访问的支持,对于变更管理的支持功能都要另行购买相应的软件。技术支持:★★★★★Rational 公司已被 IBM 公司收购,所以有可靠的售后服务保证。四、总结工具对比一览表特性 VSS SVN ClearCase易用性 ★★★★ ★★★ ★★★功能 ★★★ ★★★★ ★★★★★安全性 ★★★ ★★★★ ★★★★总体成本 ★★★★ ★★ ★★★★★技术支持 ★★★★ ★★★ ★★★★★以上几种工具的总结如下: 1. VSS 的使用简便易学,但 VSS 的功能和安全性较弱,且只对 windows 平台进行支持,建议作为项目配置管理的入门时采用的工具;2. SVN 的安全性和版本管理功能较强,可以实现异地开发的支持,但 SVN 安装和使用多采用命令行方式,学习曲线高,同时不提供对变更管理的功能,对于小型团队,可以采用 SVN 进行管理。3. ClearCase 功能完善,安全性好,可以支持复杂的管理,但学习曲线和学习成本高,需要集成 ClearQuest 才能完成完整的配置管理功能。大公司如果采用异地多研发中心同时开发的模式,一般推荐使用ClearCase。
因pdf的容量过大分4个压缩包打包,还有一个源码另外下载。 《.NET深入体验与实战精要》作者身为从事.NET一线开发的资深开发专家,常年耕耘技术博客,惠及无数.NET新知。此次将长期的思考、感悟,多年的系统开发、设计和团队管理经验,以及深入分析众多项目实战的宝贵成果和盘托出,力求将编程思想与具体实践融为一体,提炼出适合于广大读者快速理解和彻底掌握.NET软件开发的最佳学习路线。本书既考虑到实际开发中经常遇到的困惑和难题,也分析了解决问题的思路和方法,更总结出项目开发中不可或缺的技术点及思想。读者可以在欣赏一个个有趣例子的过程中,不知不觉具备开发真正商业项目的能力。 本书集实用性、思想性、趣味性于一体,内容共分为技术基础总结、系统架构设计思想及项目实战解析三部分,随书所附光盘收录大量实例代码及独家披露的商业系统,供读者参考学习。 本书适合于.NET初、中级开发人员参考学习,特别有助于.NET从业者进入实战层次,也可作为相关培训机构的参考教材,还可以作为高等院校相关专业师生的参考书。 目录 第1篇 技术基础总结 第1章 .NET,你真的知道了吗 3 1.1 搞清自己是干什么的 4 1.2 .NET的几个特性 7 1.3 万丈高楼平地起:面试者必会 9 1.3.1 C#介绍 10 1.3.2 命名空间 10 1.3.3 C#语法格式要点 10 1.3.4 变量 12 1.3.5 类型推断 12 1.3.6 变量的作用域 13 1.3.7 常量 16 1.3.8 流程控制 16 1.3.9 字符串常见操作 21 1.3.10 几个常用的数学函数 27 1.4 .NET的面向对象之门 27 1.4.1 继承——“子承父业” 28 1.4.2 委托——“任务书” 35 1.4.3 事件——“年终分红” 42 1.4.4 反射——“解剖” 49 1.5 .NET开发几把小刀 52 1.5.1 using之多变身 52 1.5.2 @符号的妙用 54 1.5.3 预处理指令,有你更轻松 55 1.6 Visual Studio.NET 2008 实战 58 1.6.1 如何创建ASP.NET项目 58 1.6.2 如何创建Windows项目 61 1.6.3 Visual Studio.NET 2008 操作与使用技巧 61 1.6.4 常见开发调试技巧 66 1.6.5 错误异常处理方法 70 本章常见技术面试题 76 常见面试技巧之面试前的准备 76 本章小结 77 第2章 细节决定成败 79 2.1 Equals()和运算符==的区别 80 2.2 const和readonly的区别 82 2.3 private、protected、public和internal的区别 86 2.4 sealed、new、virtual、abstract与override 87 2.5 abstract class与interface 91 2.6 公共变量与属性的区别 93 2.7 参数修饰符params、out和ref的区别 96 2.8 值类型和引用类型的区别 100 2.9 结构与类的区别 103 2.10 Dispose()和Close()、Finalize()的 区别 106 2.11 string和StringBuilder有什么区别 106 2.12 Debug版本和Release版本的 区别 108 本章常见技术面试题 111 常见面试技巧之细节决定成败 111 本章小结 112 第3章 ASP.NET开发大杂烩 113 3.1 页面生命周期 114 3.1.1 独立页面生命周期事件顺序 114 3.1.2 具有Master页的生命周期事件顺序 116 3.1.3 ASP.NET生命周期详解 118 3.2 页面状态管理 120 3.2.1 Cookie 121 3.2.2 HtmlInputHidden隐藏域 123 3.2.3 ViewState 123 3.2.4 查询字符串Request 124 3.2.5 Aplication对象 125 3.2.6 Session对象 125 3.2.7 示例项目:在线用户列表统计 128 3.3 服务器和客户端数据交互 131 3.3.1 页面数据绑定全攻略 131 3.3.2 Bind和Eval的区别 140 3.4 ASP.NET编程中的技巧 142 3.4.1 页面之间传值的7种方法 142 3.4.2 get与post方法的区别 146 3.4.3 ASP.NET服务器控件和 HTML控件的区别 146 3.4.4 Server.Transfer和Response.Redirect的区别 148 3.4.5 刷新页面的方法汇总 149 3.4.6 页面事件控制 150 3.4.7 在URL中传递中文的解决方案 152 3.4.8 增强用户体验的一些技巧 153 3.4.9 XHTML与HTML的区别 156 3.5 打造自己的页面基类PageBase 161 本章常见技术面试题 164 常见面试技巧之如何做好自我介绍 164 本章小结 165 第4章 Windows窗体编程你也行 167 4.1 创建简单的WinForm项目 168 4.2 创建MDI窗体应用 170 4.3 获取应用程序路径信息 174 4.4 回车跳转控件焦点 175 4.5 窗体间传递复杂数据 176 4.5.1 构造传递 176 4.5.2 公有字段传递 177 4.5.3 委托与事件传递 179 4.6 实现个性化窗体界面 181 4.7 无标题窗体拖动的两种方法 183 4.8 让程序只启动一次——单实例运行 184 4.9 实现系统托盘和热键呼出 185 4.10 进程与多线程的区别 190 4.11 创建多线程应用程序 191 4.12 WinForm开发常见问题 194 4.12.1 如何设置运行时窗体的起始位置 194 4.12.2 如何使一个窗体在屏幕的最顶端 194 4.12.3 实现窗体渐显效果 194 4.12.4 设置窗口背景为渐变色 195 4.12.5 模态窗口和非模态窗口 196 4.12.6 屏蔽窗口右上角的关闭 操作 196 4.12.7 调用执行外部的程序 197 本章常见技术面试题 197 常见面试技巧之经典问题巧回答 198 本章小结 198 第5章 数据库开发 199 5.1 ADO.NET与抽水的故事 200 5.1.1 ADO.NET的定义 200 5.1.2 趣味理解ADO.NET对象模型 202 5.1.3 进水笼头——建立Connection 204 5.1.4 抽水机——Command 206 5.1.5 输水管——DataAdapter 209 5.1.6 输水管——DataReader 210 5.1.7 随用随关,释放资源 212 5.1.8 水库管理——DataSet 212 5.1.9 水池子——DataTable 214 5.2 数据库操作类的封装详解 217 5.2.1 执行命令方法的封装 217 5.2.2 查询数据方法的封装 220 5.2.3 数据统计方法的封装 221 5.2.4 实现SqlParameter方式 222 5.2.5 实现多数据库的访问 223 5.3 常用经典SQL语句 224 5.4 事务处理 226 5.4.1 SQL和存储过程级别的事务 227 5.4.2 ADO.NET级别的事务 229 5.4.3 ASP.NET页面级别的事务 230 5.4.4 企业级服务COM+事务 231 5.4.5 System.Transactions 事务处理 236 5.5 Oracle开发常见问题 240 5.5.1 Oracle和SQL Server的常用函数对比 240 5.5.2 Oracle和SQL Server的语句区别 244 5.5.3 ASP.NET连接Oracle失败的解决方法 245 本章常见技术面试题 246 常见面试技巧之经典问题巧回答 246 本章小结 247 第6章 关于XML 249 6.1 XML概述 250 6.1.1 XML和HTML有什么区别 250 6.1.2 XML的优势 250 6.2 文档结构与基本语法 251 6.3 XML操作 253 6.3.1 XmlDocument创建XML文档 253 6.3.2 XmlTextWriter创建XML文档 254 6.3.3 XmlDocument读取XML文档 256 6.3.4 XmlTextReader读取XML文档 257 6.3.5 在HTML中显示XML中的数据 258 6.3.6 JavaScript获取XML内容 259 6.3.7 项目案例:通用自定义XML配置类 263 6.4 ADO.NET与XML 266 6.4.1 读XML文档到DataSet 266 6.4.2 DataSet转为XML文档 267 6.5 项目案例1:实现网站的RSS应用 267 6.6 项目案例2:在线实现RSS阅读器 270 本章常见技术面试题 275 常见面试技巧之经典问题巧回答 275 本章小结 276 第7章 Web Service开发详解 277 7.1 Web Service基本概念 278 7.2 Web Service的应用场景 278 7.3 创建简单的Web Service项目应用 280 7.4 Web Service属性介绍 282 7.5 ASP.NET如何调用Web Service 286 7.6 JavaScript如何调用Web Service 288 7.6.1 通过webbehavior.htc调用Web Service 288 7.6.2 通过Microsoft.XMLDOM调用Web Service 291 7.6.3 XMLHTTP POST调用Web Service 293 7.6.4 SOAP调用Web Service 293 7.7 WinForm如何调用Web Service 295 7.7.1 .NET的WinForm调用Web Service 295 7.7.2 手动发送HTTP请求调用Web Service 295 7.8 实现异步调用Web Service 297 7.9 如何保证Web Service的安全 299 7.9.1 通过SoapHeader来增强 Web Service的安全性 299 7.9.2 采用SSL实现加密传输 302 7.9.3 访问IP限制 315 7.10 Web Service开发中需要注意的问题 316 本章常见技术面试题 320 常见面试技巧之经典问题巧回答 320 本章小结 321 第8章 用户体验的杀手锏—— Ajax 323 8.1 Ajax概述 324 8.1.1 什么是Ajax 324 8.1.2 Ajax技术的核心 325 8.1.3 Ajax的工作原理 326 8.1.4 Ajax的优点 326 8.1.5 Ajax的问题 327 8.1.6 Ajax适用场景 327 8.1.7 Ajax不适用场景 329 8.1.8 XMLHttpRequest开发实例 329 8.2 微软VS.NET的Ajax开发 333 8.2.1 安装ASP.NET 2.0 Ajax Extensions 333 8.2.2 创建ASP.NET Ajax应用程序 333 8.2.3 ScriptManager控件使用技巧 335 8.2.4 UpdaetPanel控件使用技巧 336 8.2.5 AsyncPostBackTrigger实现 外部控件引发局部刷新 338 8.2.6 Ajax错误处理 341 8.2.7 告诉用户你正在做什么—— UpdateProgress控件 342 8.2.8 ASP.NET AjaxControToolKit简介 345 8.3 使用第三方组件 Ajax.dll 开发 347 8.4 使用第三方组件AjaxPro的开发 351 8.5 使用第三方组件MagicAjax的开发 351 8.6 Ajax开发原则 352 本章常见技术面试题 353 常见面试技巧之经典问题巧回答 353 本章小结 354 第9章 系统与文件操作 355 9.1 获取系统信息 356 9.1.1 用SystemInformation类获取系统信息 356 9.1.2 用Environment 类获取系统信息 357 9.1.3 通过WMI获取系统信息 358 9.1.4 用RegistryKey 类读取系统信息 361 9.1.5 用API函数获取系统信息 363 9.1.6 获取系统服务信息 365 9.2 文件操作 368 9.2.1 StreamWriter类实现写文件 368 9.2.2 通过File类创建文件 369 9.2.3 通过FileStream类创建文件 370 9.2.4 通过FileInfo类创建文件 370 9.2.5 追加文本 370 9.2.6 读取文本文件 371 9.2.7 读写二进制文件 372 9.2.8 文件复制、移动、删除 374 9.3 文件夹目录操作 375 9.4 读写INI文件 376 9.5 读写注册表 379 本章常见技术面试题 381 常见面试技巧之经典问题巧回答 381 本章小结 382 第10章 网络应用开发 383 10.1 Socket基本编程 384 10.1.1 Socket基本知识 384 10.1.2 Socket服务端开发步骤 386 10.1.3 Socket客户端开发步骤 388 10.2 异步Socket通信——实现MSN机器人 390 10.2.1 机器人服务端 390 10.2.2 客户端实现步骤 395 10.3 基于TCP协议的客户端和服务端 398 10.3.1 TcpListener 实现网络服务端 398 10.3.2 TcpClient实现网络客户端 399 本章常见技术面试题 401 常见面试技巧之经典问题巧回答 401 本章小结 402 第11章 Windows Service开发 403 11.1 什么是Windows服务 404 11.2 创建Windows服务 404 11.3 Windows服务开发常见问题 408 11.4 安装/卸载Windows服务 409 11.4.1 安装Windows服务 409 11.4.2 卸载Windows服务 410 11.4.3 Windows服务应用程序体系结构 411 11.5 调试Windows服务 414 11.5.1 日志调试法 414 11.5.2 附加进程断点调试法 414 本章常见技术面试题 416 职场智慧之初入江湖 416 本章小结 418 第12章 新技术初探 419 12.1 WPF 421 12.1.1 WPF简介 421 12.1.2 WPF何以令人佩服 422 12.1.3 XAML概述 422 12.1.4 WPF开发环境配置 423 12.1.5 项目示例:开发一个简单的WPF应用程序 424 12.2 WCF 427 12.2.1 SOA是什么 427 12.2.2 WCF是什么 428 12.2.3 WCF的优势是什么 428 12.2.4 WCF开发环境 431 12.2.5 项目示例:订票服务WCF开发步骤 431 12.3 LINQ 440 12.3.1 LINQ的架构 441 12.3.2 传统的查询 441 12.3.3 LINQ查询实例 444 12.3.4 LINQ查询语法 448 本章常见技术面试题 449 职场智慧之学习方法 449 本章小结 450 第2篇 系统架构设计思想 第13章 面向对象思想 453 13.1 为什么要面向对象 454 13.2 什么是面向对象 456 13.3 面向对象的特点 458 13.3.1 封装 459 13.3.2 继承 459 13.3.3 多态 460 13.4 面向对象设计和开发实例 466 13.4.1 传统过程化设计实现播放器功能 466 13.4.2 基于面向对象设计实现播放器功能 467 13.4.3 面向对象封装、继承、多态的应用 468 13.4.4 设计模式、条件外置及反射技术的应用 471 13.5 面向对象分析(OOA)的方法 475 13.6 面向对象设计的原则 478 13.6.1 优先使用(对象)组合,而非(类)继承 478 13.6.2 针对接口编程,而非(接口的)实现 481 13.6.3 开放-封闭法则(OCP) 482 13.6.4 Liskov替换法则(LSP) 485 13.6.5 单一职责原则(SRP) 486 13.6.6 依赖倒置原则(DIP) 486 13.6.7 接口分离原则(ISP) 489 13.6.8 面向对象设计时需要注意的 问题 490 本章常见技术面试题 491 本章小结 491 第14章 三层架构项目开发 493 14.1 什么是三层架构 494 14.1.1 常用的三层架构设计 494 14.1.2 趣味理解:三层架构与养猪 496 14.2 为什么要用三层架构 497 14.3 三层架构项目开发示例 500 14.3.1 数据库设计 500 14.3.2 创建整体解决方案 501 14.3.3 业务实体Model的实现 502 14.3.4 数据访问层的实现 504 14.3.5 业务逻辑层的实现 509 14.3.6 表示层的实现 510 14.4 实现基于工厂模式的三层架构 512 14.4.1 扩展新增数据访问层 512 14.4.2 IDAL抽象接口的实现 513 14.4.3 创建DAL对象的封装 517 14.4.4 实现抽象工厂模式 519 14.4.5 工厂模式的三层架构图 521 本章常见技术面试题 522 职场智慧之程序员的职业规划 523 本章小结 524 第15章 大型网站的性能优化与安全 525 15.1 高效C#编码优化 526 15.2 页面(HTML)优化的方法 534 15.3 ASP.NET开发性能优化 540 15.3.1 如没必要,尽量使用静态HTML页面 540 15.3.2 避免不必要的回送操作 541 15.3.3 尽量在客户端进行用户输入验证 541 15.3.4 关闭不必要的Session状态 542 15.3.5 优先使用HTML控件,而非服务器控件 542 15.3.6 不必要时关闭ViewState 542 15.3.7 禁用调试模式 543 15.4 系统缓存管理 543 15.4.1 缓存的分类 544 15.4.2 传统缓存方式 545 15.4.3 页面输出缓存 545 15.4.4 页面输出缓存API 548 15.4.5 页面局部缓存 549 15.4.6 应用程序数据缓存 554 15.4.7 文件缓存依赖 555 15.4.8 数据库缓存依赖 557 15.4.9 Memcached——分布式缓存系统 560 15.4.10 Cacheman——.NET架构 下的分布式缓存项目 561 15.5 数据库访问性能优化 562 15.5.1 选择合适的.NET数据供应器 563 15.5.2 及时地关闭数据库连接 563 15.5.3 跟踪监视SQL Server当前链接池状态 564 15.5.4 善用数据库的存储过程 567 15.5.5 SqlDataRead和Dataset的选择 567 15.5.6 ExecuteNonQuery和 ExecuteScalar的选择 568 15.5.7 数据的绑定DataBinder 568 15.5.8 使用DataReader的注意事项 568 15.5.9 Command对象的使用 569 15.5.10 反复地执行SQL语句用 Prepare() 569 15.5.11 分页的数据访问 570 15.5.12 SQL命令的优化 570 15.5.13 tempdb的使用技巧 572 15.5.14 使用视图代替跨库操作 572 15.5.15 尽量避免大事务操作 572 15.5.16 尽量避免使用游标 573 15.5.17 为你的表建立适当的索引 573 15.6 网站安全防护 573 15.6.1 什么是SQL注入式攻击 573 15.6.2 如何防范SQL注入式攻击 574 15.6.3 实现页面验证码 575 15.6.4 实现文件防盗链 579 15.6.5 采用HTTPS进行访问 584 15.7 IIS优化 584 15.7.1 如何监测IIS服务器并发数 584 15.7.2 采用Gzip压缩页面优化 585 15.7.3 网站应用程序池配置 588 15.8 网站架构优化策略 593 本章常见技术面试题 596 职场智慧之独善其身 596 本章小结 599 第16章 系统设计的原则和技巧 601 16.1 系统设计的一些原则 602 16.1.1 最适合的才是最好的 602 16.1.2 以不变应万变 603 16.1.3 可扩展性 603 16.1.4 可复用性 604 16.2 系统设计的常用方法 604 16.3 敏捷软件开发12条原则 608 16.4 系统架构师成长之路 611 本章常见技术面试题 615 职场智慧之职场政治 615 本章小结 616 第3篇 项目实战解析 第17章 权限角色管理项目解析 619 17.1 权限角色管理概述 620 17.2 项目概述 623 17.3 数据库设计 624 17.3.1 数据库实体关系模型 624 17.3.2 表结构设计 625 17.4 数据访问层 627 17.4.1 类设计 627 17.4.2 代码实现 629 17.5 业务逻辑层 629 17.5.1 类设计 630 17.5.2 扩展.NET Framework用户处理机制 632 17.6 接口调用与Web管理实现 638 17.6.1 Web.config配置 638 17.6.2 用户身份和权限验证 638 17.6.3 用户验证接口方式:权限验证用户控件 640 17.6.4 用户验证接口方式:页面基类 642 17.6.5 用户和角色权限的后台管理 644 职场智慧之如何提升自己在公司的价值 652 本章小结 653 第18章 单点登录系统的设计与实现 655 18.1 项目概述 656 18.1.1 名词定义 656 18.1.2 项目需求描述 656 18.2 业务流程设计 657 18.2.1 用户认证流程 657 18.2.2 安全验证流程 658 18.3 功能与接口设计 659 18.3.1 接口交互设计 659 18.3.2 应用系统接口 660 18.3.3 认证服务器功能和接口 660 18.4 数据库设计 660 18.4.1 数据库实体关系模型 661 18.4.2 表结构设计 661 18.5 实现认证服务器 662 18.5.1 SSO解决方案 663 18.5.2 系统管理后台 664 18.5.3 用户通行证管理中心 665 18.5.4 认证服务器接口开发 673 18.6 应用系统接入接口开发 675 18.6.1 用户身份认证 675 18.6.2 接收状态同步 676 18.6.3 用户注销 678 18.6.4 更新认证服务器状态 679 18.7 接口封装及调用 679职场智慧之晋升之道 682 本章小结 684 第19章 常用.NET开发工具介绍 685 19.1 源码版本管理: Visual SourceSafe 2005 686 19.1.1 安装和配置VSS 2005服务端 686 19.1.2 安装和配置VSS客户端 691 19.1.3 将项目加入VSS版本控制 692 19.1.4 客户端连接VSS 服务器获取源代码 694 19.1.5 设置VSS支持通过 Internet访问 696 19.1.6 版本控制的几个概念 701 19.1.7 VSS项目权限管理 703 19.1.8 VSS数据备份 705 19.1.9 VSS 2005的使用规范 707 19.2 单元测试工具:NUnit 708 19.2.1 NUnit简介 708 19.2.2 手把手教你在.NET中应用NUnit 708 19.3 日志工具——Log4net 714 19.3.1 Log4net简介 714 19.3.2 使用步骤 717 19.3.3 单独配置文件的使用 719 19.4 代码规范检查工具: Microsoft Source Analysis for C# 721 19.5 生成文档注释工具:GhostDoc 723 19.6 反编译工具:Reflector for .NET 732 19.7 动软.NET代码生成器 733 19.8 帮助文档生成工具:Sandcastle 737 19.8.1 Sandcastle介绍 737 19.8.2 生成方式 738 19.8.3 具体生成步骤 740 本章小结 748 附录A 软件编码规范 A.1 概述 750 A.1.1 规范基本原则 750 A.1.2 术语定义 750 A.1.3 文件命名组织 750 A.2 代码外观 751 A.2.1 列宽 751 A.2.2 换行 751 A.2.3 缩进 751 A.2.4 空行 751 A.2.5 空格 752 A.2.6 括号——() 753 A.2.7 花括号——{} 753 A.3 程序注释 754 A.3.1 注释概述 754 A.3.2 文档型注释 755 A.3.3 类注释 755 A.3.4 单行注释 755 A.3.5 注释标签 756 A.4 声明 758 A.4.1 每行声明数 758 A.4.2 初始化 758 A.4.3 位置 758 A.4.4 类和接口的声明 759 A.4.5 字段的声明 759 A.5 命名规范 759 A.5.1 命名概述 759 A.5.2 大写规则 760 A.5.3 缩写 761 A.5.4 命名空间 761 A.5.5 类 762 A.5.6 接口 762 A.5.7 属性(Attribute) 763 A.5.8 枚举(Enum) 763 A.5.9 参数 763 A.5.10 方法 764 A.5.11 属性(property) 764 A.5.12 事件 765 A.5.13 常量(const) 766 A.5.14 字段 767 A.5.15 静态字段 768 A.5.16 集合 768 A.5.17 措词 768 A.6 语句 769 A.6.1 每行一个语句 769 A.6.2 复合语句 769 A.6.3 return语句 769 A.6.4 if、if-else、if else-if语句 770 A.6.5 for、foreach 语句 770 A.6.6 while语句 771 A.6.7 do-while语句 771 A.6.8 switch-case语句 771 A.6.9 try-catch语句 772 A.6.10 using块语句 772 A.6.11 goto语句 772 A.7 其他 773 A.7.1 表达式 773 A.7.2 类型转换 773 A.8 匈牙利命名法 773 A.9 控件命名规则 774 A.9.1 一般命名方法 774 A.9.2 主要控件名简写对照表 774 ……

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧