[英]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,部分解决方法是标记所有文件,右键单击并撤消... ,然后单击以下对话框中的撤消更改按钮。 这将提示您输入不同的文件(让您选择No或No to All ),但不会提示没有更改的文件。 重要提示:我写“部分”是因为这种方法不适用于文件重命名,因为文件被视为未更改,因此重命名将被撤消。
是的,Team Foundation Server 2017 没有 Power Tools。您可以使用以下解决方法:
右键单击您的项目,选择撤消签出,然后只需单击确定,或任何其他确认...
然后,当撤消结帐,为每个在它真正的改变文件,提示将要求您确认签出该文件......只需单击“全否”。 Visual Studio 将知道签出的文件是否有更改或没有更改。
警告:此方法还会删除新文件,即尚未签入 TFS 的文件。 如果您想保留这些文件,那么只需将它们从您“撤消”的文件集中排除即可。
您还可以看看这个问题:他的问题Files 在进行未更改的合并时列为挂起的更改?
TFSSourceControlExplorerExtension扩展可用于 VS 2017,它有一个 undo 未更改的操作,效果很好。
进行您真正想要的更改。 未实际更改的文件随即消失。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.