TFS Gated check-in committed消息的重点是什么 - 将您的工作区与存储库进行协调?

dev*_*per 30 tfs visual-studio-2010 visual-studio

门控办理登机手续后,以下信息的重点是什么?这对我来说没有意义."如果您在提交签到时未撤消本地挂起的更改,则可能需要将工作区与存储库进行协调."

在此输入图像描述

Dav*_*haw 31

假设您正在执行单个文件的门控签入 - Progam.cs.

当您执行Gated Check-in并选择撤消本地更改时,您将Program.cs搁置到服务器并使用最新代码+ Shelveset执行构建.如果构建成功,则TFS会自动将shelveset(包含对Program.cs的更改)检入到源代码管理中.

现在,因为您没有撤消本地工作区上的更改,所以您仍然将Progam.cs作为"待更改",状态为"编辑".由于TFS已经检查了您的更改,因此不需要此"编辑".单击"Reconcile ..."将撤消该本地更改并使其与服务器上的内容保持一致.

  • 我同意@Jeff.这两种情况都非常痛苦,即成功检查更改时以及构建失败时.因为如果构建失败,我将不得不放弃我在门控签入新shelveset之后所做的新的挂起更改,这将包含重大更改(无法帮助它),然后从失败的构建中撤消shelveset.每次办理登机手续后,只有直接选择咖啡.:D (4认同)
  • 那么Reconcile是一种间接的方式,一旦成功签入文件就将文件标记为未修改?如果是这样,为什么我不想做Reconcile以及为什么VS TFS在签入我的更改时不会自动执行此操作? (3认同)
  • 是的,它会撤消它们,**但是因为TFS已经检查了它为你创建的"Shelveset",所以你不会失去任何工作.我会尽力澄清我的答案. (2认同)
  • 在第一次在TFS 2013中创建一个门控构建之后,刚刚遇到了这个问题.完全困惑:虽然我理解这个解释,但我不明白这个功能的目的.如果所有的检查都通过了,你为什么要*不*想要和解? (2认同)