繁体   English   中英

如何撤消未更改的文件的挂起更改?

[英]how to undo pending changes of files that are unchanged?

TFS 让我抓狂的一件事是,如果您签出一个文件,但您没有对其进行任何更改,它仍然显示为更改,从而分散您对所做的实际更改的注意力。 当您使用诸如 T4 之类的工具生成代码时,这一点尤其令人讨厌,因为大多数情况下,该工具会生成相同的代码,但会将文件签出。

出于某种我无法理解的原因,Visual Studio 坚持将这些显示为更改,并且如果另一个人碰巧签入相同的“更改”,甚至会声称存在冲突。

幸运的是,TFS Power Tools 包含一个命令,可以将检出的文件与服务器版本进行比较并撤消未更改的文件。 我将解释如何使用自定义工具将其集成到 Visual Studio 中。

不幸的是,如果您使用的是 Visual Studio 2017,这将不可用!

使用早期版本的 Visual Studio 完成此操作过去非常简单

tfpt uu /noget /r *

如果文件没有任何更改,我们如何从挂起的更改中删除文件?

这根据您在 TFS 中选择的版本控制系统而有所不同,因此上述问题仅存在于 TFS 的传统版本控制系统 TFVC 而不是已经支持几年的 git。

对于 TFVS,部分解决方法是标记所有文件,右键单击并撤消... ,然后单击以下对话框中的撤消更改按钮。 这将提示您输入不同的文件(让您选择NoNo to All ),但不会提示没有更改的文件。 重要提示:我写“部分”是因为这种方法不适用于文件重命名,因为文件被视为未更改,因此重命名将被撤消。

是的,Team Foundation Server 2017 没有 Power Tools。您可以使用以下解决方法:

右键单击您的项目,选择撤消签出,然后只需单击确定,或任何其他确认...

然后,当撤消结帐,为每个在它真正的改变文件,提示将要求您确认签出该文件......只需单击“全否”。 Visual Studio 将知道签出的文件是否有更改或没有更改。

警告:此方法还会删除新文件,即尚未签入 TFS 的文件。 如果您想保留这些文件,那么只需将它们从您“撤消”的文件集中排除即可。

您还可以看看这个问题:他的问题Files 在进行未更改的合并时列为挂起的更改?

TFSSourceControlExplorerExtension扩展可用于 VS 2017,它有一个 undo 未更改的操作,效果很好。

进行您真正想要的更改。 未实际更改的文件随即消失。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM