在团队开发环境中使用 Visual Studio .NET(一)

<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
团队开发环境中使Visual Studio . NET
Mark White
Microsoft Corporation
2001 年 9 月
摘要:本文提供了如何在 团队开发环境中使Visual Studio . NET Beta 2 的指导。本文假设需要由多个开发人员开发同一个项目,并且他们使用 Visual SourceSafe 进行源代码控制。
目录

简介
设置文件共享访问模式
Visual SourceSafe 内创建项目
Visual SourceSafe 访问项目
修改文件
公布更改
获取最新版本
脱机工作
提示与技巧
Visual Studio .NET Beta 2 中的问题
总结

简介


在 Microsoft⮠Visual Studio⮠.NET Beta 2 中进行 Web 应用程序团队开发的推荐方法是基于“文件共享”访问模式。每个开发人员使用的都是各自虚拟根目录中的文件副本,但所有用户都需要从中央 Microsoft⮠Visual SourceSafe⮠项目签入和签出文件。该方法具有隔离功能,防止某个团队成员的更改影响整个团队的工作副本。
该方法与 Microsoft⮠Visual InterDev⮠6.0 采用的方法不同,后者使用 Microsoft⮠FrontPage⮠Web 访问。文件共享 Web 访问是 Visual Studio .NET Beta 2 的默认访问模式,并推荐在团队开发中使用。
Visual SourceSafe 集成与 Visual Studio .NET 共同工作的方式和它与 Visual Studio 6.0、Microsoft⮠Visual C++⮠和 Microsoft⮠Visual Basic⮠项目共同工作的方式很相似。开发人员可以在本地创建自己的项目(如果使用 http://localhost),并可以从一个公用 Visual SourceSafe 项目进行签入签出。这点也与 Visual InterDev 6.0 不同,后者需要团队的所有开发人员都在中央服务器的同一个虚拟根目录下工作。
本文中的讨论以 Web 应用程序的开发为例,但此方法同样适用于在 Visual Studio .NET Beta 2 中开发非 Web 应用程序。
请注意,将应用程序适当地划分为多个独立的项目以及使用 ASP.NET 用户控制、HTTP 模块和类库都是进行团队工作的有效方法。

设置文件共享访问模式


如上所述,在 Visual Studio .NET Beta 2 中,文件共享是默认访问模式。若要确认访问模式的设置是否正确,请单击“Tools”菜单上的“Options”,单击“Projects”,再单击“Web Settings”。然后将“Preferred”访问模式设置为“File Share”,再单击“OK”。这样 Web 项目就可以添加到 Visual SourceSafe。
如果现有项目使用 FrontPage 访问模式,可以将访问模式更改为“文件共享”。请打开 Solution Explorer,用鼠标右键单击项目,然后单击“Properties”。单击“Common Properties”,然后单击“Web Settings”。将“Web Access Mode”设置为“File Share”,然后单击“OK”。现在,请保存、关闭并重新打开解决方案,使项目设置的更改生效。
本文的后面部分假设您正在使用“文件共享”访问模式。

Visual SourceSafe 内创建项目


第一个团队成员创建一个包含一个或多个项目的解决方案。(由于使用了文件共享访问,如果您要在其他计算机上创建项目,则仍要将项目位置指定为 http://myserver,但您需要通过通用命名约定 (UNC) 来访问 //myserver/c$/iNETpub/wwwroot 或 //myserver/wwwroot$。)解决方案准备就绪,可供其他团队成员开始使用时,第一个团队成员应在 Solution Explorer 内用鼠标右键单击解决方案或项目文件,然后选择“Add Solution to Source Control”。另外,第一个团队成员也可以在“File”菜单上,单击“Source Control”,然后单击“Add Solution to Source Control”。
如果解决方案包含使用文件共享访问模式的 Web 项目,则会出现以下警告。

图 1:文件共享警告对话框
可以忽略该警告。单击“Continue”。
集成开发环境 (IDE) 将提示您指定 Visual SourceSafe 数据库服务器,然后要求您指定要将解决方案文件和该解决方案的各个项目存储在 Visual SourceSafe 中的位置。
Visual Studio .NET 内的默认行为是以“Admin user”(管理员用户)的身份将用户登录到默认的 Visual SourceSafe 数据库(通常称为“公用”)。默认用户名和密码由 Visual SourceSafe 提供。由于默认管理员用户口令为空,所以将解决方案添加到 Visual SourceSafe 时可能不会提示您指定 Visual SourceSafe 数据库服务器,而可能自动将您登录到默认 Visual SourceSafe 数据库,并直接显示“Add to SourceSafe Project”对话框。默认情况下,将显示登录对话框。(Visual SourceSafe 的新版本,包括版本 6.0c 的测试版,关闭了登录对话框。Visual SourceSafe 6.0c 的最后发行版将打开该对话框并设为默认设置。)
若要避免此问题,请在“Tools”菜单上,单击“Options”,单击“Source Control”,然后单击“SCC Provider”。将登录 ID 更改为适当的用户。单击“Advanced”,并单击“Integration”选项卡。在“Choose SourceSafe Database”下,选择“Prompt”。

图 2:将项目添加到 Visual SourceSafe
此外,还会通过同一对话框,提示您指定用于存储解决方案内包含的每个项目的 Visual SourceSafe 位置。要重新设置,第一次提示时,您可以为该解决方案以及同一驱动器上的所有非 Web 项目设置 Visual SourceSafe 位置。接下来,将提示您提供 Visual SourceSafe 的位置供解决方案内的每一个 Web 项目使用。如果您不想将某个项目添加到 Visual SourceSafe 中,请单击“Cancel”然后使用“Add selected projects to source control”,这样可控制要添加的项目。本文将在稍后说明将所选的项目添加到源代码控制中。Solution Explorer 将已取消的项目显示为签出,但是项目文件不在 Visual SourceSafe 内。在此情况下,签出标识符将用来表示该项目不添加到 Visual SourceSafe 中。
设置 Visual SourceSafe 位置时,可以将解决方案文件和项目放置到同一 Visual SourceSafe 文件夹或者多个单独的文件夹中。最好让 Visual Studio.NET 控制您所有的非 Web 项目的放置。然而,每个 Web 项目应放置到各自的文件夹中以确保该项目不与其他 Web 项目冲突。很可能几个项目会包含同名文件(例如,WebForm1.aspx)。如果试图在同一 Visual SourceSafe 文件夹中放置多个项目,并且该文件夹中已存在同名文件,则会出现以下对话框,如图 3 所示:

图 3:试图将相同文件添加到 Visual SourceSafe 项目时出现的警告对话框
单击“Select different location”,然后如前所述继续操作。
如果要在已添加到 Visual SourceSafe 的解决方案中添加新项目或不在 Visual SourceSafe 内的现有项目,请先将项目添加到该解决方案。然后,在 Solution Explorer 内用鼠标右键单击该解决方案,并执行以下任一操作: 单击“Add”,然后单击“New Project...” 或者,单击“Add”,然后单击“Existing Project...”
Solution Explorer 将以签出形式显示该项目,但文件不在 Visual SourceSafe 中。现在,在 Solution Explorer 中选择项目,并在“File”菜单上,单击“Source Control”。最后,单击“Add Selected Projects to Source Control...”,这将要求您指定在 Visual SourceSafe 中存储项目的位置,如前所述。对于非 Web 项目,最好使用“File“菜单下的“Check In”命令由 Visual Studio.NET 控制 Visual SourceSafe 位置。

Visual SourceSafe 访问项目


每个团队成员第一次从 Visual Source Safe 访问项目时,必须进行如下操作:在“File”菜单上,单击“Source Control”,然后单击“Open Project From Source Control”。
IDE 将提示该团队成员指定 Visual SourceSafe 数据库服务器,并要求团队成员选择 Visual SourceSafe 项目,以及指定要复制解决方案文件和所有非 Web 项目的本地文件夹。在我的示例屏幕拍图(图 4)中,我已经打开 MyWebProjects 并将解决方案文件保存到 D:/Documents and Settings/marwhite/My Documents/Visual Studio Projects。

图 4:设置 Visual SourceSafe 项目的本地文件夹位置
默认情况下解决方案文件会复制到 C:/Documents and Settings/<您的用户名>/My Documents/Visual Studio Projects。您可以通过以下操作重新进行配置:在“Tools”菜单上,单击“Options”,单击“Environment”,然后单击“Projects and Solutions”。
如果解决方案文件和任何项目文件存储在多个单独的文件夹中,则不会显示以下对话框。但是,如果解决方案和项目文件存储在同一 Visual SourceSafe 位置,则 IDE 会提示用户选择解决方案文件。

图 5:选择解决方案文件
此时,如果解决方案包含一个或多个文件共享 Web 项目,则会显示“Set Project Location”对话框。

图 6:“Set Project Location”对话框
必须对每个 Web 项目使用此对话框以指定各个独立网站的位置。可以将 Web 项目放置到一个服务器上。例如:http://myserver/myproject_myroot。或者,将 Web 项目放置到您的本地计算机上。例如:http://localhost/myproject。Visual Studio 将为每个独立的 Web 项目创建一个虚拟根目录。
注意:如前所述,只需在第一次使用时访问解决方案。(在“File”菜单上,单击“Source Control”,然后单击“Open Project From Source Control”。)下次打开解决方案时,必须使用本地磁盘上的解决方案文件。请不要从 Web 服务器或 Visual SourceSafe 打开应用程序。
如果要将 Visual SourceSafe 内现有的项目添加到解决方案,请执行下列操作:在“File”菜单上,单击“Source Control”,然后单击“Add Project From Source Control...”,IDE 将显示如前所述的对话框。

修改文件


当团队成员处理自己的代码时,其工作方式与通常的工作方式完全一样。修改文件时,开发环境会自动提示团队成员将其签出。请注意,在项目中添加和删除文件需要签出项目文件。

公布更改


需要向团队公布新更改的团队成员会对源代码进行更改、测试和调试。更改完成后,可以选择文件,单击鼠标右键,然后单击“Check In”,或者在“File”菜单上,单击“Source Control”,然后单击“Check In”。然后,这些更改就会显示在 Visual SourceSafe 内。

获取最新版本


团队成员要获得团队的最新更改,应在 Solution Explorer 中选择解决方案文件,单击鼠标右键,然后单击“Get Latest Version (Recursive)”。团队成员需要生成应用程序的最新版本时,也应执行该过程。

脱机工作


Visual Studio .NET Beta 2 相对于 Visual Studio .NET Beta 1 的重大改进之一是脱机工作。脱机工作对许多开发人员来说非常重要,尤其是对于大部分时间在办公室外和/或旅途中的开发人员。
脱机工作允许团队成员将与 Visual SourceSafe 集成的解决方案和项目设置成脱机。也就是说,团队成员可以在与自己的公司网络和 Visual SourceSafe 数据库断开连接时处理文件。当团队成员返回办公室后,可以重新连接解决方案和项目,IDE 可使其副本与 Visual SourceSafe 数据库中保留的副本之间的更改保持同步。

进入脱机状态


若要使解决方案及其项目脱机,请在“File”菜单上,单击“Source Control”,然后单击“Change Source Control...”。IDE 将显示以下对话框:

图 7:连接和断开解决方案项目与 Visual SourceSafe 之间的连接
清除“Connected”复选框即可使解决方案和项目脱机。
请注意,在脱机之前已被您签出的文件仍保留为您签出的状态。若要避免可能发生的数据丢失现象,最好在脱机之前签出要脱机处理的文件。

脱机时签出文件


在脱机工作时,可以通常方式签出文件。脱机工作状态下第一次签出文件时,会显示以下对话框:

图 8:在断开连接时签出文件
需要取消此对话框(图 8 中)才能启用脱机签出。请选择“Don't show this dialog again”,然后单击“Check out (disconnected)”。将显示如图 9 所示的另一个错误对话框。可以忽略此对话框;单击“OK”。

图 9:断开连接状态下第一次签出文件时显示的错误对话框
下次试图在脱机工作状态下签出文件时将成功签出。请注意,上述的其他错误对话框是 Visual Studio .NET Beta 2 中的小错误,将在最终版本中解决。
当团队成员在脱机状态下签出文件时,已签出的文件的详细信息将存储为项目的一部分,并且已签出的文件将标记为读/写。

seover="window.status='正文--在团队开发环境中使Visual Studio .NET(一)';return true">
<script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
本书共分四部分,此为第一部分<br>包括基础知识、源代码管理、生成、大型项目考虑事项<br>项目管理、过程指南、报告、设置和维护团队环境和<br>Visual Studio 2008 Team Foundation Server等九章节<br><br>Jeff Beehler 撰序<br>序言<br>发布 Microsoft® Visual Studio® 2005 Team Foundation Server (TFS) 之前,我们自己先进行了一次尝试—<br>—使用它来开发 TFS。在项目的最后 18 个月,我们尽可能地应用它来管理项目的开发生命周期,这<br>也就是所谓的“Dogfooding”(内测)。通过这种内部先行试用,我们对自己创建的这一强大系统有了更<br>多的认识。我们确实发现并修复了很多质量问题,使最终产品更稳定、性能更高,如果不使用这种方法,<br>根本无法做到这一点。但更重要的是,我们更清楚了使用这种工具的最佳方式。这些经验与客户体验反<br>馈一起构成了这份指南的基础。<br>初看起来,读者可能认为这些信息应该属于产品文档的内容,甚至就可以取代产品文档。实际上,我<br>曾经也有过这种想法。然而,在与 J.D. Meier 和本指南的其他作者协作工作了一段时间后,我就清楚<br>地认识到,这两者的区分是很自然而且很重要的。我认为将这两份指南比作您的车主手册和驾驶员指<br>南再恰当不过了,两者都是必要的,但其目的又各有不同。按照惯例,产品团队只关注产品文档,而<br>将指导方面的工作留给其他人员。现在尽管我们依然要依靠其他人员来帮助解决问题,但已经开始在<br>指南部分投入更多的时间和精力,因为我们意识到产品的成功采用的重要性,以及它在提高整体客户满<br>意度方面的意义。<br>TFS 就如同汽车,是一种强大的工具,能够帮助您和您的团队更接近目标,这份指南则会帮助您实现<br>目标。每个团队根据其具体需求和历史情况的不同,都会以不同方式或多或少地接触 TFS。出于这方<br>面的考虑,我们撰写这份指南时采用了这样一种方式:即如果您希望了解全部内容,可以从头读到尾;<br>如果只需要部分指导,也可以细读具体的主题。<br>客户反馈是我们撰写这份指南的最初动力,今后也将一直引导我们的方向,并帮助我们实现目标。我们<br>深信,与闭门造车相比,像这样将社区纳入项目之能够使内容更有用,最终使我们的指南更加成功。<br>按照这种思路,真正的用户将帮助我们决定要写哪些内容、要推荐哪些最佳实践,以及如何组织内容。<br>我们的收集整理工作尚未完成,请帮助我们继续改进这份指南,告诉我们您还希望本指南涵盖哪些内<br>容。TFS 的覆盖面如此广泛,有时甚至连我们也觉得难以全面掌握。有了您的加入,我们就可以帮助客<br>户更好地利用我们所开发的工具。<br>TFS 的设计目的是使团队协力交付更好的软件。通过在内部先行试用 TFS,我们已经使自己的团队协同<br>工作,我希望您也会同意,这就是最好的成果。这份指南能够帮助您和您的团队在下一个项目实现此<br>远景。<br>祝您一切顺利!<br>Jeff Beehler<br>主管,Visual Studio Team System 2007 年 7 月<br>Jeff Beehler 是 Team System 的主管。从科罗拉多大学毕业之后,他于 1990 年在 Microsoft 开始了自<br>己的职业生涯,最初致力于 Visual C++ 的早期版本。1996 年,他离开了 Microsoft,转向自己的其他<br>兴趣所在,包括咨询、在小学教学,还建立了自己的家庭。2003 年,他回到了 Microsoft,从事 Visual<br>Studio Team System 方面的工作,在这里,他参与了项目的多个方面,从规划、执行一直到发布。他积<br>极参与 Team System 各个部分的内部先行试用工作,这有助于进一步提高他的职业技能。在业余时间,<br>Jeff 喜欢与家人分享时光、摄影以及在西部地区参与户外运动。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值