更新:2007 年 11 月
搁置功能可以保留工作区中的挂起的更改而执行更高优先级的任务,也可以与其他用户共享代码以进行代码评审。
通过执行“获取最新版本”操作,将您的工作区与最新的服务器版本同步。然后您需要生成应用程序,以确保在搁置或签入之前对其进行编译。通过执行此操作,您将有机会合并在工作区之外对受版本控制的文件所做的更改。
必需的权限
若要取消搁置挂起的更改,您必须将“读取”权限和“签出”权限都设置为“允许”。对于执行搁置任务,则没有权限要求。有关更多信息,请参见 Team Foundation Server 权限。
从源代码管理资源管理器搁置文件夹和文件
- 在“源代码管理资源管理器”中,右击该文件或文件夹,再单击“搁置挂起的更改”。 
- 在“搁置 - 源文件”对话框的“搁置集名称”框中键入搁置集名称,例如“搁置测试”。 
- “搁置 - 源文件”对话框包括两个选项: - 在本地保留挂起的更改 - 默认情况下此选项处于选中状态。如果选中了此选项,将保留您在本地工作区中对文件或文件夹所做的更改。 
- 在搁置之前评估策略和签入说明 - 如果选中了此选项,将在创建搁置集之前评估所有签入策略。有关更多信息,请参见使用签入策略和签入说明。 
 
- 在“注释”框中键入“测试我的搁置集”,然后单击“搁置”。 - 文件和文件夹将复制到版本控制服务器,其他团队成员可以对它们执行取消搁置操作。 
从解决方案资源管理器搁置文件夹和文件
- 在“解决方案资源管理器”中右击,再单击“搁置挂起的更改”。 
- 在“搁置 - 源文件”对话框的“搁置集名称”框中键入搁置集名称,例如“搁置测试”。 
- “搁置 - 源文件”对话框包括两个选项: - 在本地保留挂起的更改 - 默认情况下此选项处于选中状态。如果选中了此选项,将保留您在本地工作区中对文件或文件夹所做的更改。 
- 在搁置之前评估策略和签入说明 - 如果选中了此选项,将在创建搁置集之前评估所有签入策略。有关更多信息,请参见使用签入策略和签入说明。 
 
- 在“注释”框中键入 Testing my shelveset,然后单击“搁置”。 - 文件和文件夹将复制到版本控制服务器,其他团队成员可以对它们执行取消搁置操作。 
从“挂起的更改”窗口搁置挂起的更改
- 在 Visual Studio 集成开发环境 (IDE) 中,如果尚未打开“挂起的更改”窗口,请依次单击“视图”、“其他窗口”和“挂起的更改”窗口。 
- 在“挂起的更改”窗口中,单击“源文件”图标,然后选择要搁置的文件。 
- 单击“工作项”,然后添加或移除工作项。对于您添加的每个工作项,从“签入操作”列中选择“解决”或“关联”。 
- 选中或清除“在本地保留挂起的更改”或“在搁置之前评估策略和签入说明”框。 .gif) 说明: 说明:- 根据所选的选项,搁置操作会将一组受版本控制的文件修订、签入说明和一个相关工作项列表移动或复制到服务器之外的位置。这样,您就避免了因不小心而中断生成的风险。 
- 单击“搁置”。 
- 在“搁置 - 源文件”对话框中,在“搁置集名称”框中键入一个名称。 
- 在“注释”框中键入注释,然后单击“搁置”。 
从命令行搁置挂起的更改
- 单击“开始”,单击“所有程序”,指向“Microsoft Visual Studio 2008”,指向“Visual Studio Tools”,然后单击“Visual Studio 2008 命令提示”。 
- 键入 cd 路径,其中路径 是用于存储服务器内文件的个人副本的目录位置(例如 c:\projects)。 
- 键入 tf.exe shelve 搁置名称,然后按“Enter”。 - 将出现“搁置 - 源文件”对话框。 
- “搁置 - 源文件”对话框包括两个选项: - 在本地保留挂起的更改 - 默认情况下此选项处于选中状态。如果选中了此选项,将保留您在本地工作区中对文件或文件夹所做的更改。 
- 在搁置之前评估策略和签入说明 - 如果选中了此选项,将在创建搁置集之前评估所有签入策略。有关更多信息,请参见使用签入策略和签入说明。 
 
- 在“搁置 - 源文件”对话框中,选择要搁置的文件和文件夹,然后单击“确定”以完成搁置操作。 .gif) 说明: 说明:- 有关搁置命令的可用完整语法,请参见Shelve 命令。 
取消搁置
在对搁置集取消搁置时,只要每个已搁置的修订与工作区中挂起的更改不冲突,Team Foundation 就会将该修订还原到目标工作区中作为一个挂起的更改。有关取消搁置过程中所发生情况的更多详细信息,请参见使用版本控制搁置集。
以下是对搁置集取消搁置的两条最常见的原因:
- 无接触代码评审(即工作区模拟) 
- 将已搁置的挂起更改集成到以后的工作中 
可以使用 unshelve 命令将单个文件修订从搁置集还原到工作区。但是,取消搁置不会将整个工作区还原到基本工作区版本,即搁置的修订所基于的服务器版本。取消搁置后,执行以下任一操作可以避免在代码中引入时间不一致。
取消搁置一组挂起的更改
- 在团队资源管理器中,单击“文件”,指向“源代码管理”,然后单击“取消搁置挂起的更改”。 - 将出现“取消搁置”对话框。 
- 在“所有者名称”框中,键入搁置集创建者的姓名(如 ADVENTUREWORKS\JuanGo 或只键入 juango),然后单击“查找”。 
- 在“结果”窗格中,选择要取消搁置到工作区中的搁置集,然后单击“详细信息”。 
- 在“搁置集详细信息”对话框中,如果要从 Team Foundation 版本控制服务器上删除搁置集,则清除“将搁置集保留在服务器上”框。 
- 如果不希望还原与搁置集关联的工作项和签入说明,还可以取消选中“还原工作项和签入说明”选项。 
- 选择要取消搁置到工作区中的搁置集或搁置集项,然后单击“取消搁置”。 
Get 操作会自动合并文件两个版本之间的可协调差异,从而帮助您手动合并冲突。但取消搁置操作则不同,它不支持合并。通过在开始评审代码时将已搁置的挂起的更改从工作区中移除,可以确保审阅者对搁置集所做的任何更改(例如向文件添加注释)不会在取消搁置过程中产生合并冲突。
您也可以使用 Unshelve 命令 从命令行执行取消搁置。