我一直在为一些个人项目使用SourceGear保险库,在工作项目中使用Team Foundation Server。缺少TFS的一件事是Vault在其签入对话框窗口中具有的一个简单功能。
在Vault客户端中,您可以查看签出的文件是否已从签入的先前版本更改。这是screen shot。请注意“详细信息”列?这告诉你有区别。这是非常有用的方法是你必须检查整个项目,因为你要进行代码重新生成。我将查看我的类库项目,然后重新生成我的CodeSmith模板。这样做可能会导致一些特定文件发生变化。当我查看待处理的登记屏幕时,我看到真正改变的文件,我可以比较看看影响。
所以... TFS能做到吗?也许有一个第三方工具可以帮我吗?我必须得到TFS SDK或PowerTool吗?有人想建立吗?
答案 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窗口中的“撤消未更改”按钮来快速撤消未更改的文件。这删除了列表中立即未更改的任何项目。这样您就可以确切地看到您正在检查的内容。
虽然可能是Team Foundation Power Tools或TFS Source Control Explorer Extensions添加了此选项(无论如何都是每个TFS用户必须拥有的)。
另见:
答案 3 :(得分:4)
我不喜欢回答我自己的问题,但看起来可能没有真正的微软解决方案。对我来说,这就是我使用Visual Studio在办公室处理问题的方法。
这非常耗时。在我看到Vault确定磁盘上的文件与存储库不同之前,我从未想过它是一个问题。
也许你们都可以说在使用源代码控制库时如何进行代码生成/重新生成。
答案 4 :(得分:1)
我在企业开发环境中工作,许多开发人员可能在同一个文件上工作,我们也有TFS作为源代码控制。在我们的TFS最佳实践文档中,我们实际上不鼓励检查开发人员不打算更改的文件,这样我们在提交变更集时自然会排除文件而没有差异。
要回答您的问题,我通常会查看“待更改”窗口,并对我不确定的“已更改”文件运行比较 - 比较工具应立即告知您是否本地副本与服务器副本相同。不幸的是,除了我的建议之外,没有真正的解决方法,但是我没有看到我绝对必须检查整个项目分支进行编辑的场景。