6

是否可以查看历史记录并与搁置集进行比较?我们正在研究使用搁置集代替签到的可能性。从我们最初的调查来看,我们似乎无法像查看签到那样查看历史记录。

我们正在使用 Visual Studio 2010/TFS 2010。

4

4 回答 4

8

来自http://msdn.microsoft.com/en-us/library/ms181403(v=vs.90).aspx

部分:变更集和搁置集之间的区别:

与变更集不同,搁置集是非版本化实体。如果您或其他用户取消搁置包含搁置集的项目、编辑多个文件并重新搁置搁置集,Team Foundation 不会创建新版本的项目以供将来比较,并且不会保留有关修改项目的人员、时间或以什么方式。原来的搁板被完全替换。

所以,不,你不能回顾历史。我不确定比较搁板的方法。您还应该阅读整个部分(变更集和搁置集之间的区别),因为其中的每个项目都是不使用搁置集代替变更集的有力论据。

我也想不出任何理由为什么使用搁置集而不是变更集是可取的,也许你可以列出你们都在探索这条道路的原因。想想无法跟踪更改,仅此一项就应该是一个交易破坏者(当然,即使没有版本化的搁置集也应该这样做)..

于 2012-10-02T20:58:04.810 回答
2

搁置集上没有版本控制,但可以将工作区中的代码与搁置集中的代码进行比较,而无需拉取搁置集文件。

  1. 将要与搁置集内容进行比较的文件版本拉入工作区
  2. 在该工作区中打开解决方案
  3. 文件 >> 源代码管理 >> 取消搁置挂起的更改...
  4. 找到所需的搁置集并显示其详细信息
  5. 在 Shelveset Details 窗口中的每个文件上,您可以右键单击并选择 Compare >> With Workspace Version...

TFS 会将搁置文件拉到一个临时位置,显示差异,然后(?)完成后清理临时文件。

您将把搁置文件内容与此工作区中本地磁盘上的文件内容进行比较。如果对这两个文件都进行了更改,则比较将无法判断并将指示所有这些更改。但是,您可以将 selveset 版本与其原始版本进行比较(比较 >> 与未修改版本..),以查看仅对 shelveset 文件所做的所有更改。您还可以找出作为搁置文件 (Properties..) 基础的变更集,并查看自该通用基础变更集以来向工作区版本添加了哪些更改。

但是没有树比较,这可能需要 TFS 电动工具才能工作。

PS> 我不建议尝试使用搁置集来代替这样的签到。如果多年来我学到了一件事,那就是不要与微软设计的工作流程作斗争——你按照他们的方式做事,或者你找到不同的工具。Microsoft 不希望您以这种方式使用搁置集(他们希望您使用变更集和分支),如果您尝试,您将不断与 Microsoft 设计的工作流程作斗争。

于 2012-10-04T16:43:08.920 回答
2

就像它在 dugas 发布的链接上所说的那样,架子更多地是为了……嗯,搁置东西。例如,在我现在正在处理的项目中,我为我正在进行的一些重构更改做了一个搁置,因为一些不相关的东西坏了,我需要将代码恢复到原始的非错误填充版本。当我正在尝试某事并想要备份但我还不想签入代码时,我也会使用它。

于 2012-10-02T21:19:36.863 回答
1

您可以在将它们提交到存储库之前使用搁置集进行同行代码审查......也可以在通过门控构建过程之前将提交停放。

除了“快速搁置”工作之外,它们不适合任何其他工作 - 如果您想要拥有多个并行工作流,请使用分支。

于 2014-01-16T12:27:38.983 回答