我在挂起的更改窗口中看到一个文件。我尝试将其与最新版本进行比较,并收到一条消息“文件相同”。如果文件相同,为什么此文件显示在挂起的更改窗口中?这个文件有什么变化?我可以配置TFS不列出相同的文件吗?
我在挂起的更改窗口中看到一个文件。我尝试将其与最新版本进行比较,并收到一条消息“文件相同”。如果文件相同,为什么此文件显示在挂起的更改窗口中?这个文件有什么变化?我可以配置TFS不列出相同的文件吗?
Answers:
如果文件由于更改而被自动检出,并且最终文件的内容又被更改回其原始状态,这是正常的。到那时,您将在比较时看到有关相同内容的消息。
这篇博客文章描述了一种不太直观的处理方式。在注释中,还有一个更好的建议是通过命令行通过TFS强大的工具进行处理。
tfpt uu
电动工具,而不要使用笨拙的“ No To All”解决方案。只有添加和修改的编辑才会出现此提示。例如:UI将撤消重命名(仅用于重命名,而不重命名+编辑),而不提示。
tfpt uu /noget /r *
,必须从分支的根目录执行。这样说,尽管它正确地选择了多余的更改,然后声称要撤消它们,但我仍然在VS和“签入”对话框中看到它们已签出,所以对我来说似乎很不便:/
最近,我刚刚将VS2010更新为VS 2013,这个问题更加严重。使用比较时,完全不会弹出完全相同的文件。我讨厌这一点,因为除非仔细检查比较文件,否则您无法找出真正更改的文件。
最终,我找到了解决方法:
在外部工具中添加“撤消未更改的签出”:
tfpt.exe
uu . /noget /recursive
$(SolutionDir)
运行此命令后,TFS将自动撤消文件中的所有冗余更改。
但是这些文件仍保持签出状态,实际上它们已经撤消并且与最新版本相同。我认为这是TFS中的错误。您只需要单击解决方案资源管理器下工具栏中的“刷新”图标,这些文件就会刷新并显示正确的状态!
为了使以上解释更清楚:
为我工作。
进一步:
有时我发现我需要在开发人员命令提示符的打开提示符下运行命令(并出现找不到工作区的错误),然后导航到工作区文件夹并在其中执行。如果我直接转到正确的文件夹,则找不到该命令。 (我自己不介意解决该问题。)
Unable to determine the workspace
。已经尝试更新工作区缓存,没有成功。2小时后,我将放弃并检入未更改的文件以摆脱它们。
我通过单击“ Stage All
更改”中的按钮解决了这一问题,然后使用取消了它们的暂存Unstage All
。
它解决了我在本Changes
节中保留的未更改文件。漂亮又简单。