演练:浏览 Team Foundation 版本控制
更新:2007 年 11 月
本演练演示 Visual Studio Team System Team Foundation Server 中的版本控制集成功能。
本演练介绍如何使用 Visual Studio Team System Team Foundation Server IDE 中的版本控制。具体而言,您可以学习如何完成下列任务:
将 Team Foundation 版本控制设置为 Visual Studio Team System Team Foundation Server 的默认版本控制插件。
在 Visual Studio 中创建新项目。
将该项目添加到版本控制,并就此创建一个本地工作区,版本控制文件将在其中进行存储、编辑和测试。
签入解决方案。
将文件添加到版本控制项目并编辑现有文件。
将本地工作区中的所有挂起的更改提交到版本控制服务器。
先决条件
在完成本演练之前,您必须:
指定一个 Team Foundation Server。有关如何连接到 Team Foundation Server 的更多信息,请参见 如何:连接到 Team Foundation Server。
创建或打开一个现有团队项目。有关更多信息,请参见 演练:创建新的团队项目 或 演练:加入团队项目。
必需的权限
要完成本演练,您必须具有 Read 和 Checkin 权限。
将 Team Foundation 版本控制设置为源代码管理插件
在使用 Team Foundation 版本控制 之前,您必须将 Visual Studio 配置为使用 Team Foundation 版本控制 插件,如下面的过程所示。有关更多信息,请参见 如何:配置 Visual Studio 以使用 Team Foundation 版本控制。
说明: |
---|
将 Visual Studio 配置为在安装 Visual Studio 之后且在安装团队资源管理器时自动使用 Team Foundation 版本控制插件。 |
配置 Visual Studio 以使用 Team Foundation 版本控制
在“工具”菜单上选择“选项”。
在“选项”对话框中,找到“源代码管理”,展开它,然后单击“插件选择”。
在“当前源代码管理插件”下拉列表中,选择“Visual Studio Team Foundation Server”。
单击“确定”。
将项目添加到版本控制中
创建项目时,您可能希望将这些项目添加到版本控制中,以便可以在 Team Foundation 版本控制中对其进行管理。首次将项目添加到版本控制中时,Team Foundation 版本控制将为您创建一个工作区。“工作区”是 Team Foundation 服务器上的文件和文件夹的客户端副本。添加、编辑、删除、移动、重命名或以其他方式管理任何受版本控制的项时,您的更改将保留在客户端。它们将作为本地计算机上工作区的挂起的更改而进行跟踪。
工作区可为您提供一个独立空间,您可在其中编写和测试代码。您的修改不会影响签入源的稳定性。您的团队成员所做的更改不会影响到您。挂起的更改隔离在工作区中,直到通过签入它们来将它们“提交”到 Team Foundation 服务器。
您可以在计算机上为每个 Team Foundation 服务器创建多个工作区。有关更多信息,请参见 使用版本控制工作区。
创建新解决方案和项目
在“文件”菜单上单击“新建”,再单击“项目”。
在“新建项目”对话框中,在“项目类型”窗格中选择“Visual C#”。
在右窗格中,单击“Windows 窗体应用程序”。
在“名称”框中,键入“MyWindowsApp”,然后在“位置”框中键入路径。
选中“添加到源代码管理”框,然后单击“确定”。
在“将解决方案添加到源代码管理”框中,选择您希望针对此演练使用的团队项目。
单击“确定”。
也可从命令行或 Visual Studio 菜单添加解决方案和项目。但是,使用这些方式添加项目和解决方案并不会将其绑定。绑定可提供版本控制功能。这包括在解决方案资源管理器中指示状态的各种版本控制图标。有关更多信息,请参见 如何:绑定和取消绑定项目和解决方案、Add 命令 和 如何:将非项目或非解决方案文件/文件夹添加到版本控制。
“挂起的更改”窗口
“挂起的更改”窗口可提供有关工作区中挂起的更改的状态信息。请将其用于跟踪与更改关联的信息,例如相关工作项以及签入说明。您可以使用“查看”菜单访问“挂起的更改”窗口。有关更多信息,请参见 使用“签入”和“挂起的更改”窗口。
说明: |
---|
您应先从服务器获取所有相关源文件的最新版本,并编译代码以确保它生成正确,然后再签入挂起的更改。 |
随后,您必须使用“挂起的更改”窗口将新的解决方案文件签入版本控制。
为解决方案将挂起的更改签入到版本控制
在“生成”菜单中,单击“生成解决方案”以确认该应用程序无错误地生成。
如果“挂起的更改”窗口未打开,请在“视图”菜单上单击“其他窗口”,再单击“挂起的更改”。
“挂起的更改”窗口将您的解决方案文件列为“添加”。这表示已在您的工作区创建文件,但尚未将其添加到服务器。
在“挂起的更改”窗口对话框的“注释”对话框中输入注释“向版本控制添加新项目”。
单击“签入”以便向服务器签入挂起的添加更改。
有关更多信息,请参见挂起的更改和如何:签入挂起的更改。有关更多信息,请参见 向版本控制服务器提交更改。
编辑受版本控制的项目
版本控制是 Visual Studio 开发的一个完全集成部分。例如,当您将某个文件添加到受版本控制的项目时,Visual Studio 会以无提示方式签出并自动更新该项目文件。
当您将某个文件添加到受版本控制的项目时,Visual Studio 假定您打算在将该文件提供给团队成员之前会以某种方式编辑该文件。因此,新添加的文件不会自动签入,而将其视为对版本控制的挂起的添加项。当您显式签入未提交的更改时,您将在服务器上创建一个新的变更集。
将文件添加到受版本控制的项目
在解决方案资源管理器中右击该项目,单击“添加”,然后单击“类”。
在“添加新项”对话框中,单击“添加”以将 Class1.cs 添加到项目。
Class1.cs 与其他项目文件一起出现在“挂起的更改”窗口中,并且其“更改类型”为“添加”。在解决方案资源管理器中,您可以看到该项目的信号图标已从蓝色锁更改为红色选中标记。此图标指示该项目文件已签出。请注意 Class1.cs 带有加号 (+) 符号。这表示挂起的添加项。
当您决定编辑某个已签入的项目文件时,该文件将自动以无提示方式签出。
编辑受版本控制的项目中的现有文件
在解决方案资源管理器中的“属性”文件夹中,双击“AssemblyInfo.cs”。
在代码编辑器中,将一个新的 using 指令(如 using System.IO.Ports;)添加到该文件。
请注意,当您开始编辑 AssemblyInfo.cs 时,Team Foundation 会自动将其签出。在解决方案资源管理器中,其信号图标将更改为选中标记。系统会将文件添加到“挂起的更改”窗口中的源文件列表中。
将工作区与最新服务器版本同步
您可以使用 Get Latest 操作将工作区中的文件与最新版本的服务器保持同步。如果您始终在签入之前同步和生成,则可以避免中断集成生成。如果存在不冲突但相互不兼容的更改,并由此阻止您的应用程序进行编译,则当您和其他用户在签入这些更改时,可以中断生成。
从服务器获取最新版本到工作区并生成
在解决方案资源管理器中,右击解决方案,然后单击“获取最新版本(递归)”。
在“生成”菜单中,单击“生成解决方案”以确认该应用程序无错误地生成。
将挂起的更改签入到服务器
在确保应用程序用最新版本生成后,可以将更改签入到 Team Foundation 版本控制,并使该项目对团队成员可见。
说明: |
---|
如果由于没有时间测试应用程序,或者希望由另一个开发人员评审代码,因此没有生成应用程序,则可以将更改搁置而不是签入。有关更多信息,请参见使用版本控制搁置集。 |
可以按下列方式签入挂起的更改:
使用“文件”菜单的“源代码管理”子菜单。
在解决方案资源管理器或源代码管理资源管理器中右击已签出的文件。
在“挂起的更改”窗口中单击“签入”。
将所有挂起的更改签入到服务器
在“视图”菜单上,单击“其他窗口”,然后单击“挂起的更改”。
在“挂起的更改”窗口的“注释”框中,键入说明更改性质的注释。
例如,您可以键入“已添加 using 指令”,也可以键入“启用对 Directory 类的调用”以表明原因。
打开“工作项”通道,并选择与挂起的更改相关的任何工作项。
有关更多信息,请参见 如何:将工作项与变更集相关联。
打开“签入说明”通道,并添加针对“代码审阅者”、“安全性审阅者”和“性能审阅者”的签入说明的注释。
说明: 管理员可将签入说明配置为强制字段。必须在签入过程中完成这些字段。文本框背景中的灰色指示哪些字段为必填字段。
有关如何创建签入说明和创建自定义工作项转换的更多信息,请参见演练:自定义签入策略和签入说明。
单击“签入”。
Team Foundation Server 签入过程是为个人易用性和团队扩展性而设计的。为了优化易用性,“挂起的更改”窗口隐式地假设您要签入所有更改。但是,可以容易地免除对单独的挂起更改的签入。签入一般适用于相关更改的集合而不是单独的更改。相反,如果您从“解决方案资源管理器”或从“文件”菜单中进行签入,Visual Studio 假定您只希望将更改签入到选定项。选择文件容器(例如项目或解决方案)时,您选择的是签入该项以及该项所包含的各项。
Team Foundation Server 管理员可以将一组自定义签入策略与某个团队项目关联,以确保所有签入都满足特定准则或要求。
单个团队成员可以创建工作项,以跟踪产品缺陷或功能请求。他们可将某个工作项与特定项目关联。当您完成某个工作项时,通过在“挂起的更改”窗口中的“工作项”通道上对其进行相应的标记,您可以将它与源代码更改关联。将工作项与源代码更改关联可以确保工作状态的可追溯性,并可确保对其进行密切跟踪。
最后,您和团队成员可以向每次签入添加有意义的一致说明。用于创建团队项目的过程模板确定您的签入说明的形式和内容。Team Foundation Server 管理员可以为您的团队自定义模板。签入说明可以包括以下类别:性能影响、文档要求、测试说明和版本说明。
签入过程
单击“签入”时,系统会将所选的源文件与您在“挂起的更改”窗口中指定的任何签入说明和工作项捆绑在一起。Team Foundation 版本控制随后会将此包将上载到 Team Foundation 服务器,并将其作为新变更集提交。“变更集”是文件修订、签入说明、关联的工作项和版本控制元数据的集合,它们在服务器上作为单个易于管理的实体进行存储。有关更多信息,请参见 使用版本控制变更集。
其次,变更集中包括的任何工作项都被更新以包含返回新创建的变更集的链接。
下一步,工作项通过一个工作流进行转换,该工作流基于存在的任何预定义处理规则。例如,团队可能定义这样一个规则:在签入某个 Bug 时,如果其子状态为“修复可用”,则自动将其状态从“活动”更改为“已解决”。处理规则和工作流由用于创建团队项目的过程模板创建,但是,Team Foundation Server 管理员可对这些规则和工作流进行自定义。有关更多信息,请参见 自定义过程模板。
最后,Team Foundation 版本控制将为所有需要签入通知的团队成员生成电子邮件通知。
后续步骤
完成本演练中的步骤后,您可以了解 Team Foundation 版本控制中的更多高级功能。有关更多信息,请参见 演练:高级版本控制功能。本演练演示如何对版本控制项分支、合并和应用标签。