5

我们的一位开发人员在 Gated Checkin Builds 中发现了一些非常奇怪的东西,这似乎是 Gated Checkin 的一个功能。

启动 Gated Checkin 时,他的解决方案资源管理器中的解决方案似乎回到了最后一个签入的版本。构建完成后,Visual Studio 显示一条错误或成功消息,带有名为“Code aufnehmen”的德语按钮(英文: “调和...”)

单击后,他会取回他的更改。

我知道在 Visual Studio 中,您可以选择在搁置解决方案时还原您的解决方案。在我看来,这就是 Visual Studio 默认所做的。

是否可以将 Visual Studio 或 TFS 设置为在搁置门控签到后不恢复?或者也许有人可以告诉我 Visual Studio 这样做的原因。

4

1 回答 1

4

门控签到的整个过程是 TFS:

  • 构造一个包含所有更改的 Shelveset
  • 尝试构建代码库的最新状态 + 这个 Shelveset &
  • 如果一切成功,Shelveset 将被提交到存储库中

默认情况下,TFS 将在此操作期间将开发人员的工作区恢复为上次签入的工作区。这可以通过以下方式进行更改:
在此处输入图像描述

通过这样做,开发人员可以直接继续工作,但是一旦构建结束,在协调本地工作空间时可能会出现问题和冲突。

通常,封闭式构建应尽可能少地持续。如果保持这一原则,那么合理的做法是避免设置“保留”选项。
如果构建持续时间长于 - 比如说 - 5 分钟,那么这样做可能是值得的。

可以在P.Carnahan的这篇文章中找到对 Gated Checkin 功能的非常好的描述。

于 2012-04-12T08:50:17.420 回答