TFS Pending Changes可以显示像SourceGear Vault一样真正改变的文件吗?

时间:2010-07-27 21:25:22

标签: tfs sourcegear-vault

我一直在为一些个人项目使用SourceGear保险库,在工作项目中使用Team Foundation Server。缺少TFS的一件事是Vault在其签入对话框窗口中具有的一个简单功能。

在Vault客户端中,您可以查看签出的文件是否已从签入的先前版本更改。这是screen shot。请注意“详细信息”列?这告诉你有区别。这是非常有用的方法是你必须检查整个项目,因为你要进行代码重新生成。我将查看我的类库项目,然后重新生成我的CodeSmith模板。这样做可能会导致一些特定文件发生变化。当我查看待处理的登记屏幕时,我看到真正改变的文件,我可以比较看看影响。

所以... TFS能做到吗?也许有一个第三方工具可以帮我吗?我必须得到TFS SDK或PowerTool吗?有人想建立吗?

5 个答案:

答案 0 :(得分:18)

选择“待更改”窗口中的所有文件,然后激活上下文菜单。然后点击“撤消... ”> “撤消更改”> “不对所有人”。 >无变更的文件将被回滚。

答案 1 :(得分:10)

this page,您可以从Visual Studio命令提示符运行此命令。

tfpt uu /noget /r *

您需要安装TFS Power Tools才能实现此功能。此外,请确保在命令提示符下浏览到映射文件夹的根目录(例如, - C:\ TFS)。

TFS Power Tools链接(如果您还没有链接)
TFS Power Tools for 2010
TFS Power Tools for 2012

答案 2 :(得分:7)

无需撤消未更改的文件,因为TFS会在签入时注意到它们未更改,并且只会关联真正更改的文件。签出但未更改的任何文件都将还原为其上一个已知的已签入版本,并且不会与您的签入相关联。在TFS中(虽然没有非常清楚地记录)不可能检入未更改的文件。如果没有变化,它将始终恢复到以前的版本。

您可以通过从命令行调用'tfpt.exe uu /r'(您需要使用Team Foundation Power工具)或使用Pending changes窗口中的“撤消未更改”按钮来快速撤消未更改的文件。这删除了列表中立即未更改的任何项目。这样您就可以确切地看到您正在检查的内容。

Undo unchanged option

虽然可能是Team Foundation Power ToolsTFS Source Control Explorer Extensions添加了此选项(无论如何都是每个TFS用户必须拥有的)。

另见:

答案 3 :(得分:4)

我不喜欢回答我自己的问题,但看起来可能没有真正的微软解决方案。对我来说,这就是我使用Visual Studio在办公室处理问题的方法。   

      
  1. 在重新生成业务对象之前,我复制了整个文件夹结构
  2.   
  3. 我查看整个项目或根生成的文件夹
  4.   
  5. 我启动代码生成器。有时,我确切知道究竟发生了什么变化,但有时候,我可能会做出很多改变而且我不想错过任何东西。我的代码生成器在工作时还生成DROP / CREATE存储过程所需的所有SQL文件。   
  6.   
  7. 使用SourceGear DiffMerge,我比较刚刚生成的文件夹和以前备份的文件夹。
  8. 这非常耗时。在我看到Vault确定磁盘上的文件与存储库不同之前,我从未想过它是一个问题。

    也许你们都可以说在使用源代码控制库时如何进行代码生成/重新生成。   

答案 4 :(得分:1)

我在企业开发环境中工作,许多开发人员可能在同一个文件上工作,我们也有TFS作为源代码控制。在我们的TFS最佳实践文档中,我们实际上不鼓励检查开发人员不打算更改的文件,这样我们在提交变更集时自然会排除文件而没有差异。

要回答您的问题,我通常会查看“待更改”窗口,并对我不确定的“已更改”文件运行比较 - 比较工具应立即告知您是否本地副本与服务器副本相同。不幸的是,除了我的建议之外,没有真正的解决方法,但是我没有看到我绝对必须检查整个项目分支进行编辑的场景。